增加MongoEngine中的IntField

时间:2015-12-24 08:37:17

标签: python pymongo mongoengine

我在Django中有一个带有MongoEngine的模型,并希望每次从0开始更新时将该字段增加1

我的模型看起来像这样,

import mongoengine

class Fix(mongoengine.Document):
    number = mongoengine.StringField(max_length=50, unique=True)
    count = mongoengine.IntField()

我使用以下内容进行更新,但不确定如何将其设置为0以启动并增加1,

Fix.objects(number="number").modify(upsert=True, new=True,set__count=???)

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

你应该像这样使用inc_count

Fix.objects(device_number="number").modify(upsert=True, new=True,inc__count=1)

这会count原子地增加1

要设置为0,您可以在模型上使用默认值0。如果没有设置值,则增量应为0。