0

如果数据库中不存在,我正在尝试创建一个数据库mongo,然后在数据库中创建一个集合;然后在集合中插入/更新一个文档(其中包含两个键,称为erpdataset其值是字符串列表)。我知道如何插入文件,例如,

self.connection = pymongo.MongoClient(host=db_host, port=db_port)
self.connection.datasets.datasets.update_one({'erp': 'erp1'},
                                             {'$set': {'data_set': ['database1']}},
                                             upsert=True)

当文档第一次插入 mongo 时,创建一个列表,其中包含字符串作为字段“data_set”的值,但是如何维护/更新字符串列表,只要有新字符串进入,只需附加的现有列表data_set

更新。工作查询

connection.erp_datasets.erp_datasets.update_one({'erp_name': 'erp1'},
                                                {'$push': {'data_set': 'database1'}}, upsert=True)
4

1 回答 1

3

我认为您正在寻找$push更新运算符。

$push 运算符将指定的值附加到数组。

self.connection.datasets.datasets.update_one(
   {'erp': 'erp1'},
   {'$push': {'data_set': 'database1'}}
)
于 2017-09-22T11:33:47.680 回答