QuizHub - это система опросов пользователей, которая позволяет администраторам создавать, изменять и удалять опросы и вопросы, а пользователям - проходить эти опросы анонимно.
- Авторизация в системе (регистрация не требуется)
- Добавление, изменение и удаление опросов
- Атрибуты опроса: название, дата старта, дата окончания, описание
- Поле "дата старта" у опроса нельзя менять после создания
- Добавление, изменение и удаление вопросов в опросах
- Атрибуты вопроса: текст вопроса, тип вопроса (ответ текстом, ответ с выбором одного варианта, ответ с выбором нескольких вариантов)
- Получение списка активных опросов
- Прохождение опросов анонимно
- Получение пройденных опросов с детализацией по ответам по уникальному ID пользователя
- Django 4.2.13
- Django REST framework 3.15.2
- Postgresql
- Docker
python -m venv venv source venv/bin/activate # для Windows: venv\Scripts\activate pip install -r requirements.txt
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'postgres', 'USER': 'postgres', 'PASSWORD': 'postgres', 'HOST': 'pgdb', 'PORT': '5432', } }
Убедитесь, что у вас установлен Docker. Запустите контейнеры: docker-compose up --build
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
Зайти в дирикторию проекта
Запустить - docker-compose up -d (если убрать -d, сразу покажутся все логи, иногда удобнее писать без -d, чтобы увидеть где ошибка) Открыть ЛОГИ docker ps Проверить ЛОГИ docker logs <container_id> Если что, там будет ошибка, обычно она пишется в конце
Запуск существующего (остановленного) контейнера: docker start <container_id>
Остановка запущенного контейнера: docker stop <container_id>
Перезапуск контейнера: docker restart <container_id>
Удаление контейнера: docker rm <container_id>
Удаление всех остановленных контейнеров: docker container prune
Просмотр всех запущенных контейнеров: docker ps
Просмотр всех контейнеров (включая остановленные): docker ps -a
Просмотр логов контейнера: docker logs <container_id>
Просмотр логов контейнера в режиме реального времени: docker logs -f <container_id>
Проект настроен на использование PostgreSQL. Убедитесь, что у вас установлен и настроен PostgreSQL. Используйте виртуальное окружение для управления зависимостями. При запуске проекта с помощью Docker все необходимые контейнеры будут автоматически созданы и запущены.