Здравствуйте! Я новичок в django, прощу строго не судить, просто помогите новичку в изучении плиз.
Хочу создать БД для тестов(Предметы, вопросы, ответы). 3 модели соединены между собой. вот код models.py :
spoiler
from django.db import models
# Модель Предметов
class Subject(models.Model):
subject_name = models.CharField("Название предмета:", max_length=100)
LEVEL_CHOICES = (
("1", "1"),
("2", "2"),
("3", "3"),
)
level = models.CharField(
"Уровень предмета:",
max_length = 20,
choices = LEVEL_CHOICES,
default = '1'
)
def __str__(self):
return self.subject_name
class Meta:
verbose_name = "Предмет"
verbose_name_plural = "Предметы"
# Модель Вопросов
class Question(models.Model):
subject_id = models.ForeignKey(Subject, verbose_name='Предмет', on_delete=models.CASCADE)
question = models.TextField("Вопрос")
def __str__(self):
return self.question
class Meta:
verbose_name = "Вопрос"
verbose_name_plural = "Вопросы"
# Модель Ответов
class Answer(models.Model):
question_id = models.ForeignKey(Question, verbose_name='Вопрос', on_delete=models.CASCADE)
answer = models.TextField("Ответ")
correct_answer = (
("0", "Нет"),
("1", "Да"),
)
level = models.CharField(
"Правильный ответ:",
max_length = 1,
choices = correct_answer,
default = '0'
)
def __str__(self):
return self.answer
class Meta:
verbose_name = "Ответ"
verbose_name_plural = "Ответы"
admin.py :
spoiler
from django.contrib import admin
from .models import Subject, Question, Answer
admin.site.register(Subject)
admin.site.register(Question)
admin.site.register(Answer)
Тут видно что модели вопросов и ответов выводятся отдельно:
Мне нужно сделать чтобы при добавлении
Вопроса тама же была формы добавления ответов в одном месте.
(Сделать 1 таблицу для вопросов и ответов не вариант, потому что мне нужно чтобы ответы были именно в отдельной таблице, чтобы потом добавлять дополнительные поля).
И тут ещё одна проблема возникает, как сделать чтобы формы добавления ответов выводились 4 штуки, и чтобы они добавлялись в 4 раза в таблицу под разными айди, по foreginkey одинаковый от модели вопросов.
В гугле не нашёл или неправильно пишу чтоли как то.. В документации подобного случается я лично не смогу найти.. Помогите кто знает плиз..