Skip to content

Twinki31/my_project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QuizHub

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

Проект использует PostgreSQL. Настройте базу данных

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'postgres', 'USER': 'postgres', 'PASSWORD': 'postgres', 'HOST': 'pgdb', 'PORT': '5432', } }

Запуск с использованием Docker

Убедитесь, что у вас установлен 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'a

Запуск контейнера: docker run

Запуск существующего (остановленного) контейнера: 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 все необходимые контейнеры будут автоматически созданы и запущены.

Конец

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published