Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Как объединить Формы из разных моделей в админке Django? [RSS Feed]

#1 Фев. 10, 2020 17:37:28

exzyggwp
Зарегистрирован: 2020-02-10
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Как объединить Формы из разных моделей в админке Django?

Здравствуйте! Я новичок в django, прощу строго не судить, просто помогите новичку в изучении плиз.

Хочу создать БД для тестов(Предметы, вопросы, ответы). 3 модели соединены между собой. вот код models.py :

 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 :

 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 одинаковый от модели вопросов.

В гугле не нашёл или неправильно пишу чтоли как то.. В документации подобного случается я лично не смогу найти.. Помогите кто знает плиз..

Офлайн

#2 Фев. 10, 2020 19:40:47

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2250
Репутация: +  40  -
Профиль   Отправить e-mail  

Как объединить Формы из разных моделей в админке Django?

Офлайн

  • Начало
  • » Django
  • » Как объединить Формы из разных моделей в админке Django?[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version