我有一個名爲login_info
文件,它包含下列字段:在mongoengine從嵌入的文檔刪除值
class login_info(Document):
user_name = StringField(max_length=120)
password = StringField(max_length=120)
email = EmailField()
gender = StringField(max_length=120)
date_of_birth = DateTimeField()
visibility = StringField(max_length=120)
client_id = ObjectIdField(required=False)
location = ListField(EmbeddedDocumentField("Tracking"))`
在上述領域location
是一個嵌入式文件,它包含下列字段:
時間
緯度,
經度
我想從滿足下列條件此嵌入文檔中刪除的值。
time < system_datetime
。
以下爲login_info
文件示例數據:
{
"_cls":"login_info",
"_id":ObjectId("5046f43c12d0592e3f59e25d"),
"_types":[
"login_info"
],
"date_of_birth":ISODate("2011-02-07T00:00:00 Z"),
"email":"[email protected]",
"expire":1346827684,
"gender":"male",
"issue":1346827324,
"key":"47d1e64e51dfa1cf99ce4a59e0c940",
"location":[
{
"Latitude":"5615.3111",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"1236.711",
"time":ISODate("2012-09-13T12:24:36.051 Z")
},
{
"Latitude":"000",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"3.70",
"time":ISODate("2012-09-25T18:30:57.756 Z")
},
{
"Latitude":"11",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"1",
"time":ISODate("2012-09-26T10:25:29.157 Z")
},
{
"Latitude":"11",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"1",
"time":ISODate("2012-09-26T10:40:58.895 Z")
},
{
"Latitude":"11",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"1",
"time":ISODate("2012-09-26T10:54:08.361 Z")
},
{
"Latitude":"11",
"_types":[
"Tracking"
],
"_cls":"Tracking",
"Longitude":"1",
"time":ISODate("2012-09-26T11:08:55.873 Z")
}
],
"password":"jack",
"refresh_token":"22580a8f69",
"token":"bac8a5f863",
"user_name":"jack",
"visibility":"visible"
}
你想只刪除「時間」字段?或者'time'小於'system_datetime'的整個'location'嵌入文件? –
我想用新傳的json值更新位置嵌入式文檔 –