我遇到的问题是只有一个字段在mongoengine模型上保存。
这是类定义:
from mongoengine import *
connect('leads')
class Contact(Document):
name = StringField()
email = StringField()
phone = StringField()
company = StringField()
title = StringField()
message = StringField()
在python终端中,我运行:
>>> from Contact import Contact
>>> contact = Contact(name='myrtle williams', email='myrtlewilliams@gmail.com', phone='1234567890', title='president', message='asdfsadf')
>>> contact.save()
然后,在mongo中,我查询并且我看到的是一个保存字段“message”的文档:
{
"_id" : ObjectId("503cfa86d0d9b317a258e136"),
"_types" : [
"Contact"
],
"message" : "asdfsadf",
"_cls" : "Contact"
}
为什么其他字段没有保存?
答案 0 :(得分:3)
我尝试运行你的代码,它对我很有效(mongodb 1.8.2,mngoengine 0.6.20,pymongo 2.2.1)。
{
"_id" : ObjectId("503cfceb6cb71a38d4a4cd4e"),
"_types" : [ "Contact" ],
"name" : "myrtle williams",
"title" : "president",
"phone" : "1234567890",
"_cls" : "Contact",
"message" : "asdfsadf",
"email" : "myrtlewilliams@gmail.com"
}
您最有可能遇到与旧版本的mongoengine相关的问题。
答案 1 :(得分:0)
您的测试代码看起来很好,MongoEngine也有类似的测试用例,确保在我加入项目之前的0.4天内。
我可以想到不同数据的两个可能原因:
Contact
from Contact import Contact