我正在 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。
我可以为每个问题使用单选按钮,但不知道如何限制它们,以便只能为一个外键选择一个。
最佳答案
我不确定如何通过反向查找来完成。
我知道这不完全是您想要的,但非常接近。
你可以继续在 admin.py 中尝试这个吗
admin.site.register(Quiz)
#admin.site.register(Option) #Include this if required
class OptionInline(admin.TabularInline):
model = Option
@admin.register(Question)
class QuestionAdmin(admin.ModelAdmin):
inlines = [
OptionInline,
]
关于python - django admin 中的单选按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18242384/