我想创建调查。我有以下型号:
class Survey(models.Model):
question = models.CharField(max_length=100)
description = models.CharField(max_length=500, blank=True, null=True)
end_date = models.DateTimeField()
class SurveyOptions(models.Model):
survey = models.ForeignKey(Survey, related_name='s_id', on_delete=models.CASCADE)
text = models.CharField(max_length=50)
survey
选项可能是2或3或10或等等。
我该如何创造呢?我不知道如何为它创建表单。 我用谷歌搜索,但我没有找到任何有用的链接。我需要一个例子。感谢。
答案 0 :(得分:2)
要创建调查,您确实希望用户可以选择预定义字段。以下是Django website的一个例子:
from django.db import models
class Student(models.Model):
FRESHMAN = 'FR'
SOPHOMORE = 'SO'
JUNIOR = 'JR'
SENIOR = 'SR'
YEAR_IN_SCHOOL_CHOICES = (
(FRESHMAN, 'Freshman'),
(SOPHOMORE, 'Sophomore'),
(JUNIOR, 'Junior'),
(SENIOR, 'Senior'),
)
year_in_school = models.CharField(
max_length=2,
choices=YEAR_IN_SCHOOL_CHOICES,
default=FRESHMAN,
)
def is_upperclass(self):
return self.year_in_school in (self.JUNIOR, self.SENIOR)
然后,您可以使用Django的ModelForm从模型本身创建表单。
我希望这有帮助!