在同一个 Django 管理页面中添加与外键相关的实体



我正在开发一个Django应用程序,它将管理一些测验。这些测验由一个问题和一些可能的答案组成,我将其定义为不同的模型。

它们之间存在 OneToMany 关系,据我所知,应该使用外键建模,在本例中,在答案实体中。

但是,在管理 Django 管理站点的数据时,这非常不方便,因为我必须首先定义我的问题,然后在添加答案的同时查找问题以填充外键字段。

以某种方式可以在添加问题时定义所有答案,就像它是 ManyToMany 关系(带有 + 符号的框等(

一样?

您可以使用InlineModelAdmin。

在您的情况下,这可能如下所示:

from django.contrib import admin
class AnswerInline(admin.StackedInline):
model = Answer
extra = 1  # If you have a fixed number number of answers, set it here.
class QuestionAdmin(admin.ModelAdmin):
model = Question
inlines = [
AnswerInline,
]
# don't forget to register your model
admin.site.register(Question, QuestionAdmin)


     希望有帮助,编码愉快!


最新更新