Python +;中的Django queryset update()方式
我如何在Django queryset上调用update,它不写特定的值,而是修改已经存在的值,如下所示Python +;中的Django queryset update()方式,python,django,Python,Django,我如何在Django queryset上调用update,它不写特定的值,而是修改已经存在的值,如下所示 Entry.objects.filter(pub_date__year=2010).update(count+=1) 如何实现这一点?您可以从文档中使用: for e in Entry.objects.filter(pub_date__year=2010): e.count+= 1 e.save() reporter=Reporters.objects.filter(na
Entry.objects.filter(pub_date__year=2010).update(count+=1)
如何实现这一点?您可以从文档中使用:
for e in Entry.objects.filter(pub_date__year=2010):
e.count+= 1
e.save()
reporter=Reporters.objects.filter(name='Tintin')
reporter.update(stories\u filed=F('stories\u filed')+1)
试试这个:
from django.db.models import F
Entry.objects.filter(pub_date__year=2010).update(count=F('count') + 1)
谢谢,但是这个解决方案是显而易见的,我更愿意在更新时避免for循环。