save()
がview
で呼び出された後、私のmodel
は更新されません。いくつかの場所(here、here)を見ると、私の場合は答えが出ませんでした。私model
はありませんが含まれManyToManyField
:呼び出し後にDjangoモデルが更新されない.save()
モデル:
class Event(models.Model):
name = models.CharField(max_length=120)
date = models.DateTimeField(auto_now=False, auto_now_add=False)
attendees = models.ManyToManyField(Employee)
approval = models.ForeignKey(EventStatus, default=2)
def __unicode__(self):
return self.name
def approve_url(self):
return reverse("RGAU:EventApprove", kwargs={"id": self.id})
ビュー:
def EventApprove(request, id=None, **kwargs):
instance = get_object_or_404(Event, id=id)
instance.approval.id = 3
instance.save()
messages.success(request, "Event Approved")
return redirect("RGAU:UserDashboard")
目標は
Event
インスタンスは、ボタンをWebページにプッシュされたときに「承認済み」に更新することです
(したがって、ビューEventApprove
)。
instance.approval.id
正しい承認ステータスid
を割り当てると仮定しますが、保存はコミットされません。
私は間違っていますか?
承認は外部キーです。 'instance.approval.id = 3'を' instance.approval = Approval.objects.get(id = 3) 'に変更することはできますか? – Rafael