【发布时间】:2010-07-22 03:27:16
【问题描述】:
我试图在我的一个模型中更改 BooleanField 的值,但 Django 不让我这样做。以下是相关代码:
query = MyModel.objects.filter(name='example').filter(boolField=False)
print query[0].boolField
query[0].boolField = True
query[0].save()
print query[0].boolField
这令人惊讶的打印:
False
False
知道为什么= True 不粘吗?提前致谢!
编辑:这修复了它:
query = MyModel.objects.get(name='example', boolField=False)
query.boolField = True
query.save()
您似乎无法更改筛选条件的查询中的字段?
【问题讨论】:
-
您为什么要这样做?如果您正在获取一个对象,为什么不使用
MyModel.objects.get? -
我把它改成了
.get,这似乎已经解决了。知道为什么吗?不能更改您过滤的字段吗?
标签: django django-models django-queryset