删除pymongo收藏中的列表项目

问题描述 投票:0回答:1

我在pymongo和flask中有一个用户集合,在用户集合中,我有一个字段 "评级":[],它把项目作为输入,并把它们添加到列表中。我是一个初学者在pymongo和flask和我有麻烦删除一个特定的项目在评级列表中.比方说,我有一个用户的实例,如。

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

使用 :

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

返回TypeError: string indices must be integers(字符串索引必须是整数)

如何删除评级列表内的 "坏 "项目,这个错误是什么意思? 我将感谢您的指导,帮助我完成这项任务。先谢谢你

list collections pymongo
1个回答
2
投票

你应该使用 $pull 运营商。

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

1
投票

试试这个。

del user['ratings'][1]

0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.