Как совместить несколько моделей на одной странице в админке Django?

Ребят, привет.

Моя задача: Страница состоит из множества блоков, которые нужно редактировать на одной странице в админке Django.

Проблема: на странице также присутствует опросник: 3 вопроса, в каждом вопросе по 3 возможных варианта ответов. Я хочу сделать так, чтобы шел вопрос под ним шло три ячейки для ответов, потом еще один вопрос (3 ответа) итд. И это у меня не получается.

Код моделей

class Step(models.Model): #Общая модель для контента на странице
    title = models.CharField(max_length=200)
    description = models.CharField(max_length=200)
    annotation = models.TextField()
    main_text = models.TextField()
    main_photo = models.ImageField(upload_to='static/bakot/imagination/', height_field=None, width_field=None, max_length=100)
    navigation_text = models.CharField(max_length=200)
    true_question = models.TextField()
    true_answer = models.TextField()

    def __str__(self):
        return self.title

class Question(models.Model): # Модель для вопроса
    step = models.ForeignKey(Step, on_delete=models.CASCADE)
    question_text = models.CharField(max_length=200)

class Answer(models.Model): #Модель для ответов.
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)


Код админки:

from bakot.models import Step, Question, Answer

class AnswerType(admin.TabularInline):
    model = Answer
    extra = 3

class QuestionType(admin.TabularInline):
    model = Question
    extra = 3
    inlines = [
        AnswerType,
    ]
class QuestionAdmin(admin.ModelAdmin):    
    inlines = [
        QuestionType,
    ]
admin.site.register(Step, QuestionAdmin)


В итоге, получается download?id=QXfm0t92JOeHOgq48lE7XDJStWUe

Т.е. Ответы не подключаются. В этом и проблема.

P.s. Сам не очень хорошо знаком с Django, если скажем нужно это все дело выносить в отдельное приложение, либо как-то делать иначе, буду рад услышать.

P.s.s Документацию прочитал, что одно наследование было, про двойное наследование, ничего не нашел.
  • Вопрос задан
  • 1812 просмотров
Решения вопроса 1
sim3x
@sim3x
Если тебе нравится делать неправильно, то stackoverflow.com/questions/14308050/django-admin-...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы