__init__.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:django-chemtrails 作者: inonit 项目源码 文件源码
def get_meta_node_class_for_model(model, for_concrete_model=True):
    """
    Meta nodes are used to generate a map of the relationships
    in the database. There's only a single MetaNode per model.
    :param model: Django model class.
    :returns: A ``StructuredNode`` class.
    """
    if for_concrete_model:
        model = model._meta.concrete_model

    if model in __meta_cache__:
        return __meta_cache__[model]
    else:
        @six.add_metaclass(MetaNodeMeta)
        class MetaNode(MetaNodeMixin, StructuredNode):
            __metaclass_model__ = model

            class Meta:
                model = None  # Will pick model from parent class __metaclass_model__ attribute

        __meta_cache__[model] = MetaNode
        return MetaNode
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号