在MongoEngine 0.8版之前,它默認存儲DBRef。對於0.8及更高版本,它默認存儲一個ObjectId。
有一個dbref
參數創建ReferenceField(explicit is better than implicit)時,應使用:
class Bar(Document):
content = StringField()
foo = ReferenceField('Foo', dbref = True) # will use a DBRef
bar = ReferenceField('Bar', dbref = False) # will use an ObjectId
這裏的documentation for the ReferenceField。
我有版本0.7.9安裝,當我創建一個ReferenceField 沒有的dbref
參數,我得到以下警告:
[...]/lib/python2.7/site-packages/mongoengine/fields.py:744: FutureWarning:
ReferenceFields will default to using ObjectId strings in 0.8, set DBRef=True
if this isn't desired
warnings.warn(msg, FutureWarning)
感謝隊友,我想他們已經更新了他們的文檔的0.6版0.20。我正在使用0.6.18,但我會更新它0.6.20非常感謝幫助朋友。 – 2012-08-10 03:14:28