0
class Foo(models.Model)
field1 = models.IntegerField()
field2 = models.IntegerField()
bar_field = models.ForeignKey("Bar", null=True, blank=True)
ビューでは、私はFoo pkを与えられており、対応するBar
オブジェクトを取得して編集し、再度保存する必要があります。これを行うにはどうすればよいでしょうか?外部キーオブジェクトの編集
def my_view(request, foo_pk)
foo = get_object_or_404(Foo, pk=foo_pk)
bar = foo.bar_field
if not bar:
bar = Bar()
#bar = Bar(foo=foo) # this is normally how I would do it
# if I were using ManyToMany
bar_form = BarForm(instance=bar) #sent off to the view
#[...]
bar_form.save() #if bar_field was null, this won't get connected to Foo when saved
問題は、私がBarの空のインスタンスを作成しても、Fooに接続されていないということです。 bar_form
を保存すると、オブジェクトの保存/作成が行われますが、単なる単なる立場です。オブジェクトがすでに存在するときにも、存在しないときにもこのコードを再作成することができますか?終わり