【发布时间】:2013-08-14 21:10:49
【问题描述】:
我正在 django 中创建一个测验应用程序。这是模型:
class Quiz(models.Model):
title = models.CharField(max_length=200)
description = models.TextField()
publish = models.BooleanField(default=False)
def __unicode__(self):
return self.title
class Question(models.Model):
quiz = models.ForeignKey(Quiz)
question = models.TextField()
hint = models.TextField()
def __unicode__(self):
return self.question
class Option(models.Model):
question = models.ForeignKey(Question)
option = models.CharField(max_length=250)
correct = models.BooleanField(default=False)
def __unicode__(self):
return self.title
每个问题只能有一个答案。这就是问题所在。我一直无法弄清楚如何为 Option 编写管理表单模型使得对于每个问题,只有一个选项可以具有正确=True。
我可以为每个问题使用单选按钮,但不知道如何限制它们,以便只能为一个外键选择一个。
【问题讨论】:
-
您使用的是哪个版本的 Django?我们可以看到你的“admin.py”文件吗?此外,您的
Option模型的__unicode__方法没有返回有效值。 -
使用RadioSelect。这就像一个普通的下拉菜单,它只是让您选择保存一个值。
标签: python django django-admin