我已经定义了Flavor
文档,与我的其他模型非常相似,最近添加了is_archived
字段:
class Flavor(BaseDocument):
is_archived = BooleanField(default=False)
在python shell中,我可以验证我的Documents确实有字段并设置为布尔值:
for f in Flavor.objects.all():
print f.is_archived, type(f.is_archived)
>> False <type 'bool>
>> False <type 'bool>
>> ...
但是当我filter
查询时,它只返回自添加字段以来我创建的文档。
Flavor.objects(is_archived=False)
Flavor.objects.filter(is_archived=False)
>> [<Flavor: newFlavor>]
>> [<Flavor: newFlavor>]
如何更新过滤后的查询要收集的旧文档?
答案 0 :(得分:2)
刚想通了。如何仔细构建问题的完美示例自然会导致答案:
for f in Flavor.objects.all():
f.update(set__is_archived=f.is_archived)