我在mongodb中有这个数据库
picture:"http://placehold.it/150x150"
name:"Gushkool"
email:"leilaware@gushkool.com"
city:"Rabat"
location:Object
type:"Point"
coordinates:Array
0:-6.81134
1:33.95564
我想创建像这个数据库的模型,这是我的镜头:
class location(Document):
type = fields.StringField()
coordinates = fields.StringField()
class products(Document):
picture = fields.StringField()
name = fields.StringField()
email = fields.StringField()
city = fields.StringField()
location = ReferenceField(location)
答案 0 :(得分:0)
class mongoengine.fields.EmbeddedDocumentField(document_type,** kwargs)
嵌入式文档字段 - 带有声明的document_type。只有有效值才是EmbeddedDocument的子类。
将您的模型更改为:
class location(EmbeddedDocument):
type = fields.StringField()
coordinates = fields.ListField()
class products(Document):
picture = fields.StringField()
name = fields.StringField()
email = fields.StringField()
city = fields.StringField()
location = fields.EmbeddedDocumentField('location')
并在您的视图中
lct = location(type="test")
#lct.save() don't use save
prt = products(picture="aaa",name="aaa",email="aaa",city="aaa")
prt.location= lct
prt.save()