Bạn đang làm sai. Bạn nên lưu một tham chiếu đến Materials
của mình sau đó chuyển nó làm đối số cho Regenerators
Demo
class Materials(Document):
title = StringField(unique=True, required=True)
class Regenerators(Document):
material = ReferenceField(Materials, required=True)
m = Materials(title='aisi304').save()
r = Regenerators(material=m).save()
Sau đó, tài liệu của bạn trông như thế này:
> db.regenerators.find()
{
"_id" : ObjectId("565c9d110acf4510cf1f8712"),
"material" : ObjectId("565c9cfc0acf4510cf1f8711")
}
> db.materials.find()
{ "_id" : ObjectId("565c9cfc0acf4510cf1f8711"), "title" : "aisi304" }
>
Nếu bạn muốn sử dụng tham chiếu đến tài liệu hiện có, bạn cần đưa ra truy vấn bằng cách sử dụng .get
sau đó chuyển nó tham chiếu làm đối số cho Regenerators
m = Materials.objects.get(title='aisi304')
r = Regenerators(material=m).save()