Для создания системы тестирования, или опросника, на Django, вам понадобятся следующие шаги:
- Создайте новый проект Django с помощью команды
django-admin startproject myproject
.
- В корневой директории проекта создайте новое Django приложение с помощью команды
python manage.py startapp quiz
.
- В файле
settings.py
вашего проекта добавьте приложениеquiz
в списокINSTALLED_APPS
.
- Создайте модель для опроса в файле
models.py
вашего приложенияquiz
. Например, можно создать модельQuestion
, содержащую поля, такие какtext
(текст вопроса) иchoices
(варианты ответа).
from django.db import models class Question(models.Model): text = models.CharField(max_length=200) choices = models.CharField(max_length=200)
- Выполните миграции, чтобы создать таблицу опроса в базе данных.
python manage.py makemigrations python manage.py migrate
- Создайте представления (views) для вашего опросника. Например, вы можете создать представление
quiz_list
, чтобы отображать список всех доступных опросов.
from django.shortcuts import render from .models import Question def quiz_list(request): quizzes = Question.objects.all() return render(request, 'quiz_list.html', {'quizzes': quizzes})
- Создайте шаблоны (templates) для ваших представлений. Например, можете создать файл
quiz_list.html
, в котором будет отображаться список всех доступных опросов.
{% for quiz in quizzes %} <h2>{{ quiz.text }}</h2> <p>{{ quiz.choices }}</p> {% endfor %}
- Создайте URL-шаблоны (urls) для ваших представлений. Например, создайте файл
urls.py
в вашем приложенииquiz
и добавьте следующий код:
from django.urls import path from .views import quiz_list app_name = 'quiz' urlpatterns = [ path('list/', quiz_list, name='quiz_list'), ]
- Добавьте URL-шаблоны вашего приложения в файл
urls.py
вашего проекта.
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('quiz/', include('quiz.urls')), ]
- Запустите сервер разработки с помощью команды
python manage.py runserver
и перейдите по адресуhttp://127.0.0.1:8000/quiz/list/
, чтобы увидеть список опросов.
Это лишь базовая схема для создания системы тестирования на Django. Далее вы можете добавить функционал для создания опросов и ответов на них, а также логику обработки результатов тестирования. Также, возможно, вам потребуется использовать Django Forms для создания форм для пользовательского ввода ответов.