在mongodb文档中的列表中插入项目

时间:2013-07-16 10:38:20

标签: mongodb pymongo

我有这样的文件

{ "_id" : "decfed9a04b997d", "pushed_list" : [ ] }

我希望通过存储在python列表中的这些子项更新/插入“pressed_list”

lis1 = 
    [
       {
        item : 'item1',
        desc : 'desc_item1'
       },
       {
        item : 'item2',
        desc : 'desc_item2'
       },
       { ........................
       }

    ]

我试过这个

db.monitor.update({'_id' : 'dbjkdd'}, { '$push':{'pushed_list': {'$each':{lis1}}}})

它给了我一个错误。

Traceback (most recent call last):
  File "monitor.py", line 13, in <module>
    db.monitor.update({'_id' : 'dbjfdd'}, { '$push':{'pushed_list': {'$each':{lis1}}}})
TypeError: unhashable type: 'list'

1 个答案:

答案 0 :(得分:6)

我找到答案,非常愚蠢;只需删除额外的大括号{}

而不是这个

db.monitor.update({'_id' : 'dbjkdd'}, { '$push':{'pushed_list': {'$each':{lis1}}}})

使用此

db.monitor.update({'_id' : 'dbjkdd'}, { '$push':{'pushed_list': {'$each':lis1}}})

即在'{'及其对应的'$each'

后删除'}'