Ich muss in der Lage sein, eine Quiz-Anwendung mit 20 einige ungerade Multiple-Choice-Fragen zu erstellen.<class> hat keine Fremdschlüssel zu <class> in Django beim Versuch, Inline-Modelle
Ich habe 3 Modelle: Quizzes
, Questions
und Answers
.
Ich möchte in der Admin-Oberfläche ein Quiz erstellen, und die Quiz-und Antwort-Elemente inline.
Ziel ist es, auf "Add Quiz" zu klicken und auf eine Seite mit 20 Fragefeldern mit jeweils 4 Antwortfeldern zu übertragen.
Hier ist, was ich habe zur Zeit:
class Quiz(models.Model):
label = models.CharField(blank=true, max_length=50)
class Question(models.Model):
label = models.CharField(blank=true, max_length=50)
quiz = models.ForeignKey(Quiz)
class Answer(models.Model):
label = models.CharField(blank=true, max_length=50)
question = models.ForeignKey(Question)
class QuestionInline(admin.TabularInline):
model = Question
extra = 20
class QuestionAdmin(admin.ModelAdmin):
inlines = [QuestionInline]
class AnswerInline(admin.TabularInline):
model = Answer
extra = 4
class AnswerAdmin(admin.ModelAdmin):
inlines = [AnswerInline]
class QuizAdmin(admin.ModelAdmin):
inlines = [QuestionInline, AnswerInline]
admin.site.register(Question, QuestionAdmin)
admin.site.register(Answer, AnswerAdmin)
admin.site.register(Quiz, QuizAdmin)
ich folgende Fehlermeldung erhalten, wenn ich versuche, ein Quiz hinzuzufügen:
class 'quizzer.quiz.models.Answer'> has no ForeignKey to <class 'quizzer.quiz.models.Quiz'>
Ist das machbar, oder versuche ich zu viel heraus zu ziehen der Django Admin App?