Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python mongoengine双向参考如何?_Python_Mongodb_Reference_Mongoengine_Bidirectional - Fatal编程技术网

Python mongoengine双向参考如何?

Python mongoengine双向参考如何?,python,mongodb,reference,mongoengine,bidirectional,Python,Mongodb,Reference,Mongoengine,Bidirectional,给定以下代码: from mongoengine import * connect('spike_bidirectional') class User(Document): name = StringField() page = ListField(ReferenceField('Page')) class Page(Document): content = StringField() user = ReferenceField(User) u = Use

给定以下代码:

from mongoengine import *

connect('spike_bidirectional')

class User(Document):
    name = StringField()
    page = ListField(ReferenceField('Page'))

class Page(Document):
    content = StringField()
    user = ReferenceField(User)

u = User(name="Test User").save()
p = Page(content="Page 1", user=u).save()
p2 = Page(content="Page 2", user=u).save()

u.reload()
p.reload()
x = u.pages
x总是空的。数据库本身看起来很好。是否有一种方法可以直接从用户访问与userobject相关的所有页面


如果双向连接是可能的,我想知道在数据模型中定义拥有和引用站点的规则是什么。属性本身的名称是否相关?

您使用的是哪个版本的Mongoengine?我相信0.8及以上版本不会取消引用,除非您明确告诉它

创建一个测试数据库,并尝试对模型进行以下更改

page = ListField(ReferenceField(Page, dbref=True))

user = ReferenceField(User, dbref=True)
我还没有测试,首先我要检查并确保使用的是Mongoengine的版本