Проект quality_assessment это бекэнд для сайта-агрегатора рецензий, на котором вы можете посмотреть рейтинг интересующего вас произведения, написать о нем отзыв и поставить оценку, также вы можете комментировать чужие отзывы.
quality_assessment дает возможность передавать данные с помощью REST API интерфейса, доступные действия:
-
регистрация пользоватея
-
получение или обновление токена
-
получение полного списка произведений
-
посмотр уже имеющихся отзывов или добавление свого
-
добавление комментария к другим отзывам
и еще много всего.
Стек:
- Django
- DRF
- djangorestframework-simplejwt
- psycopg2-binary
- PyJWT
Клонируем репозиторий и переходим в него:
git clone https://github.com/semenvanyushin/quality_assessment.git
cd yamdb_final
Создаем и активируем виртуальное окружение:
python3 -m venv venv
source /venv/bin/activate (source /venv/Scripts/activate - для Windows)
python -m pip install --upgrade pip
Ставим зависимости из requirements.txt:
pip install -r requirements.txt
Переходим в папку с файлом docker-compose.yaml:
cd infra
Поднимаем контейнеры (infra_db_1, infra_web_1, infra_nginx_1):
docker-compose up -d --build
Выполняем миграции:
docker-compose exec web python manage.py makemigrations reviews
docker-compose exec web python manage.py migrate
Создаем суперпользователя:
docker-compose exec web python manage.py createsuperuser
Србираем статику:
docker-compose exec web python manage.py collectstatic --no-input
Создаем дамп базы данных (нет в текущем репозитории):
docker-compose exec web python manage.py dumpdata > dumpPostrgeSQL.json
Останавливаем контейнеры:
docker-compose down -v
DB_ENGINE=django.db.backends.postgresql
DB_NAME=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_HOST=db
DB_PORT=5432