Django admin: "Как правильно отображать многоуровневые отношения?".

Я новичок во фреймворке Django и пытаюсь создать приложение для тестирования по математике. Идея состоит в том, чтобы генерировать тест из пула вопросов. У меня есть следующие сущности БД:

class TestResult(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)
    score = models.IntegerField(blank=True, null=True)
    
    class Meta:
        db_table = 'test_results'


class Question(models.Model):
    text = models.CharField(unique=True, max_length=255)
    type = models.IntegerField(blank=True, null=True)

    class Meta:
        db_table = 'questions'


class Answer(models.Model):
    question = models.ForeignKey(Questions, on_delete=models.CASCADE)
    text = models.CharField(max_length=255)
    is_correct = models.BooleanField()

    class Meta:
        db_table = 'answers'

class AskedQuestion(models.Model):
    question = models.ForeignKey(Questions, on_delete=models.CASCADE)
    test = models.ForeignKey('TestResults', on_delete=models.CASCADE)

    class Meta:
        db_table = 'asked_questions'


class GivenAnswer(models.Model):
    answer = models.ForeignKey(Answers, on_delete=models.CASCADE)
    test = models.ForeignKey(TestResults, on_delete=models.CASCADE)

    class Meta:
        db_table = 'given_answers'

Я могу отобразить AskedQuestion и GivenAnswer как 2 отдельных StackedInline для TestResult.

Но я хочу отображать пары Question + Answer при переходе на страницу TestResult в админке Django. Любые предложения будут оценены по достоинству.

Вернуться на верх