删除pymongo集合中的列表项

时间:2020-06-16 18:58:08

标签: list collections pymongo

我在pymongo和flask中有一个用户集合,在用户集合中有一个字段 “ ratings”:[],将项目作为输入并将其追加到列表中。我是pymongo和flask的初学者,无法删除评分列表中的特定项目。 假设我有一个用户实例,例如:

user = users.find_one({"name":"Bill" , "ratings":["good" , "bad"]}) 

使用:

user['ratings'].remove("bad")

返回 TypeError:字符串索引必须为整数

如何删除评分列表中的“不良”项目,此错误是什么意思? 感谢您为我提供帮助的指导。 预先谢谢你

3 个答案:

答案 0 :(得分:2)

您应该使用$pull运算符。

db.collection.update(
  { name: 'Bill' },
  { $pull:
    { ratings: 'bad' }
  }
)

答案 1 :(得分:1)

尝试一下:

del user['ratings'][1]

答案 2 :(得分:0)

已解决:users.update_one({"Email":email} , {"$pull":{"ratings":rating} }) 做了工作并删除了用户