Я делаю обзорный сайт с django. Я довольно новичок в django, поэтому заранее извиняюсь, если не могу объяснить. Мой вопрос фокусируется на следующих моделях:Django formsets
class SurveyType(models.Model):
name = models.CharField(max_length=200)
def __unicode__(self):
return self.name
class Question(models.Model):
ANSWERTYPE_CHOICES = (
(u'T', u'Text'),
(u'R', u'Range'),
(u'M', u'Media'),
)
question = models.CharField(max_length=200)
surveytype = models.ForeignKey(SurveyType)
answertype = models.CharField(max_length=1, choices=ANSWERTYPE_CHOICES)
order = models.IntegerField(default=0)
def __unicode__(self):
return self.question
class Survey(models.Model):
course = models.ForeignKey(Course)
surveytype = models.ForeignKey(SurveyType)
def __unicode__(self):
return u"%s %s" % (self.course, self.surveytype)
class Answer(models.Model):
answer = models.CharField(max_length=400)
survey = models.ForeignKey(Survey)
question = models.ForeignKey(Question)
def __unicode__(self):
return self.answer
Django получает идентификатор обследования. С идентификатором опроса он получает опросник и показывает вопросы, которые должны отображаться.
def survey(request, survey_id):
survey_data = get_object_or_404(Survey, pk=survey_id)
survey_type = survey_data.surveytype
questions = Question.objects.all().filter(surveytype = survey_type).order_by('order')
Я прочитал Джанго документацию о FormSets, но я не понимаю, что я должен написать в forms.py, так что я не могу назвать форму в views.py оказывать де форму в шаблоне который показывает вопросы и записывает ответы в модели ответов.
Заранее благодарим за мой английский.
Да, но проблема в том, что я не знаю, что писать в формах .py. Документация Django показывает, как работать с формами, использующими одну или две модели, а не четыре: S. Проблема заключается в создании form.py –