pymongo - 如何将值附加到数组?

时间:2017-09-22 11:18:01

标签: mongodb pymongo insert-update pymongo-3.x

我正在尝试创建一个数据库,如果它已经存在于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;数据集的值的列表,但是如何维护/更新字符串列表新字符串进来,只需附加data_set的现有列表。

更新。 工作查询

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

1 个答案:

答案 0 :(得分:1)

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

  

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

self.connection.datasets.datasets.update_one(
   {'erp': 'erp1'},
   {'$push': {'data_set': 'database1'}}
)