在Django模型中更新ListField?

0 投票
1 回答
799 浏览
提问于 2025-04-17 08:02

我有一个模型,里面有一个团队属性,这个属性是一个列表,我想更新这个团队。

class Users(models.Model):
    name = models.CharField(max_length = 100,unique=True)
    designation = models.CharField(max_length =100 )
    team = ListField(models.CharField(max_length =100),null=True)

我知道我可以先获取这个对象的团队属性,把新的值添加到这个列表里,然后再用新的列表更新这个对象。但是有没有其他方法可以更新这个列表字段呢?

1 个回答

2

如果你想往一个列表里添加一个值,可以使用一个叫做 $push 的操作符,专门用来处理 team 这个字段。Django的MongoDB引擎有一个相关的功能可以使用:

http://django-mongodb.org/topics/atomic-updates.html

这里有关于如何在MongoDB中使用 $push 操作符的文档: http://www.mongodb.org/display/DOCS/Updating#Updating-%24push

希望这些信息对你有帮助。

撰写回答