0
DB内のすべてのオブジェクトに対してDjangoモデルのパラメータを更新したいとします。値は各オブジェクトごとに異なります。バッチ更新として実行できるかどうか、または各アイテムを繰り返し処理してそれぞれを個別に保存する必要があるかどうかを確認しようとしています。私はすべてのオブジェクトを取得する場合モデル内のすべてのオブジェクトのパラメータを更新する方法 - Django
from django.contrib.auth.models import User
from django.db import models
class Profile(models.Model):
user = models.OneToOneField(User)
position = models.PositiveIntegerField(null=False, default=0)
次のように:
queryset = User.objects.all()
その後、これらをループし、更新position
私が使用しているモデルは、Djangoの認証ユーザモデルを拡張したものです:
for user in queryset:
user.position = #SOME FUNCTION
私は内user.save()
を行う必要がありますループ?または、各アイテムを更新して一度にすべてをDBに保存できますか?
すごく、私のことを指摘してくれてありがとう。 – Rob
ちょうどuser.positionとuser.save()ステートメントがこれにインデントされるべきであることに気づいた。何らかの理由で編集できない – Rob
@Robもちろん、thx! – crhodes