Добавить объекты, связанные с внешним ключом, на той же странице администрирования Django - PullRequest
0 голосов
/ 21 октября 2018

Я работаю над приложением Django, которое будет управлять некоторыми тестами.Эти тесты сформированы вопросом и некоторыми возможными ответами, которые я определил как различные модели.

Между ними существует отношение OneToMany, которое, насколько я знаю, должно моделироваться с помощью внешнего ключа, в данном случае, в объекте ответа.

Однако при управлении данными с сайта администрирования Django это довольно неудобно, потому что сначала я должен определить свой вопрос, а потом, добавляя ответы, искать вопрос, чтобы заполнитьполе внешнего ключа.

Было бы как-то возможно определить все ответы при добавлении вопроса, аналогично тому, как если бы это было отношение ManyToMany (поле с символом + и т. д.)?

1 Ответ

0 голосов
/ 21 октября 2018

Для этого вы можете использовать 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)


Надеюсь, что это поможет и удачного кодирования!


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...