queryset.py 文件源码

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

项目:mongoengine_utils 作者: aiscenblue 项目源码 文件源码
def __get_doc(self, fld, item):
        """Get document as dict or a list of documents."""
        from .fields import FollowReferenceField

        @singledispatch
        def doc(fld, item):
            return item

        @doc.register(db.ListField)
        def doc_list(fld, item):
            return [self.__get_doc(fld.field, el) for el in item]

        @doc.register(FollowReferenceField)
        def doc_frl(fld, item):
            doc = fld.document_type.objects(id=item).get()
            doc.begin_goodjson()
            result = doc.to_mongo()
            doc.end_goodjson()
            return result

        result = doc(fld, item)

        if isinstance(result, dict) and "id" not in result and "_id" in result:
            result["id"] = result.pop("_id")
        return result
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号