Co próbuję zrobić, to zarządzać kilkoma formularzami na jednej stronie, wiem, że są formsety i wiem, jak działa zarządzanie formularzami, ale mam pewne problemy z pomysłem, który mam na uwadze.Django - Praca z wieloma formularzami
Wystarczy, aby pomóc sobie wyobrazić, co mój problem jest mam zamiar użyć przykładu Django modele:
from django.db import models
class Poll(models.Model):
question = models.CharField(max_length=200)
pub_date = models.DateTimeField()
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
Teraz wyobraź sobie, że już dokonał clases forma:
from django import forms
from mysite.polls.models import Poll, Choice
class PollForm(forms.ModelForm):
class Meta:
model = Poll
class ChoiceForm(forms.ModelForm):
class Meta:
model = Choice
exclude = ('poll',)
To, co chcę zrobić, to mieć kilka instancji formularza modelu Ankiety i wyboru na jednej stronie, ale pamiętaj, że te modele można powtórzyć:
<form action="{{url}}" method="post">
{{pollform}}
{{choiceform}}
{{pollform}}
</form>
Jak widać, istnieją dwie formy ankiety i jedna forma wyboru, ale formularze ankiety są oddzielone formularzem wyboru. Potrzebuję, aby formularze zachowały kolejność na stronie, więc jest trochę trudniej korzystać z formularzy.
Problemem, który dostałem, jest to, że wartości, które pojawiają się we wpisie, to nazwa "odpowiedź", więc otrzymuję listę wszystkich elementów ze wszystkich formularzy o nazwie "odpowiedź" i nie mogę określić, które z nich należą do każdej formy.
Nie wiem, czy to wyjaśnienie daje jasny obraz mojego problemu. Jakieś pomysły, żeby to zrobić?
Dzięki za pomoc!
PD: Nie zwracaj uwagi na relację między sondą a wyborem, te modele mają jedynie na celu wyjaśnienie problemu, więc relacja nie ma żadnego znaczenia.