Django - 在父级和父级的父级中使用 class 作为内联

Django - Use class as inline in both parent and parent of parent

我的代码中有三个 class。考试、问题和问题资源。 QuestionResource 是一个文件,并且有一个 Question.Also 的外键 Question 有一个指向 Exam 的外键。目前,问题作为内联包含在考试的管理视图中。但是,它是在管理员中单独注册的,因此我既可以使用自己的管理员添加问题,也可以使用考试管理员视图中的内联视图。

问题是我希望能够在编辑考试和编辑问题时添加问题资源。但是当我尝试将 QuestionResource 添加为 Exam 的内联时,它会出错:

'exams.QuestionResource' has no ForeignKey to 'exams.Exam'.

当然,我可以在 QuestionResource 模型中向 Exam 添加外键,但由于它始终必须等于 QuestionResource.Question.Exam,我认为这不是正确的方法。另外,我不想在问题管理视图中添加资源时设置考试。(当然,我在编辑考试管理视图时必须设置问题。)

django 支持这样的东西吗?

Django 尚不支持此功能,但 django-nested-inline 可以完成这项工作。