gpt4 book ai didi

mongodb - MongoEngine 从 ListField 中删除字符串

转载 作者:可可西里 更新时间:2023-11-01 09:58:56 25 4
gpt4 key购买 nike

代码:

class Users(db.Document, UserMixin):
first_name = db.StringField()
last_name = db.StringField()
username = db.StringField(unique=True)
password = db.StringField()
email = db.StringField()
following = db.ListField(db.StringField(), default=[])
role = db.ListField(db.StringField(), default=["user"])
confirmed = db.BooleanField(default=False)
confirmed_on = db.DateTimeField()

所以如果我想从 Users.following 字段中删除某个字符串

Users.objects(username="some_user").update(pull__following=["some_string"])然后保存?

因为我已经试过了,它不会从 following listField

中删除字符串

最佳答案

如果你想从列表中删除一个元素,你需要使用 pull 修饰符,它采用单个值而不是列表,因为你这样做正确的查询是:

Users.objects(username='some_user').update(pull__following='some_string')

您还可以使用 pull_all 修饰符从“following”列表中删除多个元素;在本例中,您传递了一个值列表。

Users.objects(username='some_user').update(pull_all__following=['one_string', 'another_string'])

关于mongodb - MongoEngine 从 ListField 中删除字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34402579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com