Я новичок в Django. Хотел учиться на примере создания простейшего вопросника для тестирования учеников. Ни где не могу найти подобного. Либо совсем сложные проекты, либо совсем не то (блоги, опросы, магазины и т.п.). Был бы очень благодарен если смогли бы подсказать. Нужен простейший функционал. Авторизация (только вход, без регистрации, в админке будут заданы логины и пароли). html без красот, просто страница с вопросами (вопросы тоже создаются в админке) и 4-5 ответов (A B C D...). Выбор посредством radio button. После всех ответов записать в базу и вывести результат. Заранее благодарю, если сможете помочь.
models.py
from django.contrib.auth.models import User
from django.db import models
class Question(models.Model):
Questions = models.CharField('Вопрос', max_length=200)
answer_A = models.CharField('A', max_length=200)
answer_B = models.CharField('B', max_length=200)
answer_C = models.CharField('C', max_length=200)
answer_D = models.CharField('D', max_length=200)
max_marks = models.IntegerField(default=1)
choice = (('A', 'answer_A'), ('B', 'answer_B'), ('C', 'answer_C'), ('D', 'answer_D'))
answer = models.CharField(max_length=1, choices=choice, verbose_name='Ответ')
# user = models.ForeignKey(User, on_delete=models.CASCADE, null=True)
def __str__(self):
return str(self.vopros)
class Meta:
verbose_name = 'Вопрос'
verbose_name_plural = 'Вопросы'
class ResultTests(models.Model):
test = models.ForeignKey(Quest, on_delete=models.CASCADE)
user = models.ForeignKey(User, on_delete=models.CASCADE)
result = models.BooleanField('Результат', default=False)
class Meta:
verbose_name = 'Результат'
verbose_name_plural = 'Результаты'
views.py
from django.urls import reverse
from .models import Question, ResultTests
def index(request):
return render(request, 'index.html')
def start(request):
return render(request, 'answer.html', {'Question': Question.objects.all()})
def result(request):
return render(request, 'result.html')