jjzjj

mongoengine-referencefield

全部标签

python - 使用 Flask 和 MongoEngine 跟踪 Tumblelog 应用程序时出错

我正在关注tumbleblog应用here我的__init__.py:fromflaskimportFlaskfromflask.ext.mongoengineimportMongoEngineapp=Flask(__name__)app.config["MONGODB_SETTINGS"]={'DB':"sencha_web_service",'username':"","password":""}app.config["SECRET_KEY"]="KeepThisS3cr3t"db=MongoEngine(app)if__name__=='__main__':app.run()我得

python - Mongoengine ...查询不在 ListField 中的内容?

例如..classPage(Document)tags=ListField(StringField())在这种情况下,我们可以像这样在标签列表中找到一个值。Page.objects(tags='coding')如果标签类似于['coding','x','y'],那么文档将被匹配...但我的问题是如何找出不在列表字段中的值。我的错误代码是..Page.objects(tags!='coding')或Page.objects(tags__not='coding')或Page.objects(tags__not__in='coding')但是..它们不只是工作..如何查询在ListField

python - Python mongoengine 中没有重复项的 ListField

我一定是遗漏了一些非常明显的东西。但我似乎无法找到一种使用mongoengine表示集合的方法。classItem(Document):name=StringField(required=True)description=StringField(max_length=50)parents=ListField(ReferenceField('self'))i=Item.objects.get_or_create(name='testitem')[0]i2=Item(name='parents1')i2.save()i3=Item(name='parents3')i3.save()i.pa

python - 并发下的Mongoengine文档一致性

我正在尝试创建一个虚拟包装类(一个mongoengineDocument)来实现Redis哈希的接口(interface)。例如:classHashModel(mongoengine.Document):'''Representsadictionarywithaname.InterfacesimilartoRedisHashes'''name=mongoengine.StringField()adict=mongoengine.DictField()defsafe_reload(self):#becauseitfailsifnoobjectpresenttry:self.reload(

python - MongoEngine - 如何关闭游标

我正在使用timeout=False查询数据库cursor=Users.objects.timeout(False)文档说如果创建了一个没有超时的游标,那么它必须手动关闭。那么,问题是在使用完光标后如何关闭光标?我没有在文档或游标对象中找到任何关闭功能。**编辑**这是dir(cursor)的输出:['_BaseQuerySet__dereference','__bool__','__call__','__class__','__deepcopy__','__delattr__','__dict__','__doc__','__format__','__getattribute__',

javascript - Django MongoEngine CORS 错误

我正在使用django1.11.7并且我已经安装了django-cors-hearders。我一直在尝试将POST请求中的自定义header发送到我的DRF应用程序,但出现以下错误:Responsetopreflightrequestdoesn'tpassaccesscontrolcheck:No'Access-Control-Allow-Origin'headerispresentontherequestedresource.Origin'http://localhost:3000'isthereforenotallowedaccess.TheresponsehadHTTPstatu

python - 无法保存 pickle 的 MongoEngine 文档

我已将一些mongoengine文档转储到pickle文件中。当我在运行时加载它们并尝试将它们保存到Db时,没有出现错误,但没有保存文档。这是一个代码示例:withopen("documents.list","rb")asinfile:documents=pickle.load(infile)fordocumentindocuments:ifMyDocument.objects(id=document.id).first()isNone:document.save()我已验证document对象与正确的集合和数据库相关联。在上面的代码中,它输入了if,因此执行了document.sav

python - 将 mongoengine 与多处理一起使用 - 如何关闭 mongoengine 连接?

无论我尝试什么,当尝试在mongoengine数据库上使用多处理时,我都会不断点击“MongoClientopenedbeforefork”警告关于不fork事件的mongo连接。standardmongoadvice似乎只能从子进程中连接到数据库,但我认为我正在做的事情在功能上应该是等效的,因为我在使用多处理之前关闭了数据库,但我仍然遇到了问题。没有最小示例或不适用解决方案的相关问题是here,here,特别是对于flask/celery和here的情况重现问题的最小示例:frommongoengineimportconnect,Document,StringField,ListFi

mongodb - 如何处理 PyMongo/MongoEngine AutoReconnect?

当我使用MongoEngine在集合中迭代查询超过10万个文档时。它通常以"pymongo.errors.AutoReconnect:[Errno54]Connectionresetbypeer"结束。我已经检查了AutoReconnect的其他答案/解决方案,但我怀疑这些是否与我遇到的情况相同。所以我发布了这个问题。是否有避免AutoReconnect的提示或我可以做的任何诊断?以下是我收集的一些解决方案:使用try...catch...使用c扩展(pymongo_has_c())使用像MongoDBProxy这样的第三方库设置关键字参数,比如timeout和bulk_size(我试

python - 将 json 补丁应用于 Mongoengine 文档

我正在尝试将json补丁应用于Mongoengine文档。我正在使用这些json-patch库:https://github.com/stefankoegl/python-json-patch和mongoengine0.14.3与python3.6.3这是我的实际代码:json_patch=JsonPatch.from_string(jp_string)document=Document.objects(id=document_id)json_documents=json.loads(document.as_pymongo().to_json())json_patched_docume