我有这样一个嵌入式文档(python 操作mongoEngine)
class price2(EmbeddedDocument):
name = StringField(required=True)
market = StringField(required=True)
date = StringField(required=True)
average = StringField(required=True)
week_price = StringField(default=None)
class price1(Document):
price = EmbeddedDocumentField(price2)
我现在需要通过
name = StringField(required=True)
market = StringField(required=True)
date = StringField(required=True)
average = StringField(required=True)
中任意一个字段(或者其它方法)查询以及更新,数据库里的数据格式如下:
{
"_id" : ObjectId("59a63fdfac7a4f1740cdbed0"),
"price" : {
"name" : "白菜",
"market" : "成都市...",
"date" : "2017-08-30",
"average" : "4.00元/公斤",
"week_price" : ""
}
}
各位大神,求帮助啊,谢谢
注:刚开始准备将所有查询、更新等操作封装在一个类里,没找到解决办法,不得已改为一下方法:
cate = price2(price_name=name,price_market=market)
result = price1.object.filter(price=cate)
price 是price1中的price字段
mongoengine:https://segmentfault.com/a/1190000008025156
查询结果转换成字典:user = User.objects.filter(raw={‘username’: ‘tm’}).first().to_mongo()
MongoDB配置成本地服务:
1、mongo.log
2、mongo.config:
dbpath=D:\mongodb\data\db
logpath=D:\mongodb\log\mongo.log
3、管理员方式启动命令行(到mongodb 的bin目录下):
mongod –config D:\mongodb\mongo.config –install –serviceName “MongoDB” –journal
ps:–是两条英文“-”