7
これはおそらく簡単な質問ですが、私はDjango Docsからそれを理解できないようです。私は2つのModelFormを一度に別のものに保存しようとしています。私はこれらの問題を確実に解決するために、ビューにロジックを書き込む方法がわかりません。ForeignKeyを使ってDjango ModelFormを保存する
models.py
class Address(models.Model):
address = models.CharField(max_length=100)
city = models.CharField(max_length=50)
zipcode = models.PositiveIntegerField()
class Store(models.Model):
name = models.CharField(max_length=100)
description = models.CharField(max_length=140, blank=True)
address = models.ForeignKey(Address, null=True)
forms.py
class CreateStore1Form(forms.ModelForm):
class Meta:
model = Store
exclude = ('address',)
class CreateStore2Form(forms.ModelForm):
class Meta:
model = Address
views.py
@login_required
def create(request):
if request.method == "POST":
form1 = CreateStore1Form(request.POST)
form2 = CreateStore2Form(request.POST)
if form1.is_valid() and form2.is_valid():
store = form1.save(address)
new_address = form2.save(commit=False)
new_address.store = store
mew_address.save()
else:
form1 = CreateStore1Form()
form2 = CreateStore2Form()
return render(request, 'create.html', locals())
すべてのヘルプは、APになりますpreciated。ありがとう!
これは役立ちますか?[Djangoの1ページで複数のフォームを処理するための適切な方法](http://stackoverflow.com/questions/1395807/properway-to-handle-multiple-forms-on-one-page- –
答えのいくつかはあなたを助けてくれましたか? –
すべてのアクティブなStackOverflowユーザーのために、動作するソリューションを取得した場合、答えが不要な場合に人々が時間を費やさないように、回答を受け入れたものとしてマークしてください。 –