我有这样一个嵌入式文档(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:–是两条英文“-”