Проект Reviews_to_works собирает отзывы пользователей на произведения. Произведения делятся на категории: «Книги», «Фильмы», «Музыка». Сами произведения в YaMDb не хранятся. Произведению может быть присвоен жанр из списка предустановленных. Благодарные или возмущённые пользователи оставляют к произведениям текстовые отзывы и ставят произведению оценку; из пользовательских оценок формируется рейтинг произведения. Данный проект выполнялся в команде.
Проект базируется на следующих технологиях:
- Python 3.7.9
- Django 2.2.6
- Django REST Framework 2.2.6
- SimpleJWT
- Виртуальная среда VENV (для разработки проекта в отдельном окружении)
- Git (GitHub) (для сохранения и отслеживания изменений кода)
- Линтер Flake8 (для проверки соответствия кода стандарту PEP8)
Тимлид - Светлана Логвинова (https://github.com/SvetlanaLogvinova88):
реализовала часть, касающуюся управления пользователями: систему регистрации и аутентификации, права доступа, работу с токеном, систему подтверждения через e-mail. Координировала работу команды, осуществляла взаимодействие с ревьюером (заказчиком) и отвечала за сборку проекта из веток.
Руслан Рахматуллин (https://github.com/Ruslan964):
реализовал систему отзывов и комментариев: описал модели, представления, настраивал эндпойнты, определял права доступа для запросов, а также реализовал систему рейтингов произведений.
Платон Егорченков (https://github.com/baby-platom):
реализовал управление категориями, жанрами и произведениями: описал модели, представления и эндпойнты для них, определял права доступа для запросов.
- Клонировать репозиторий и перейти в него в командной строке:
git clone https://github.com/SunnyInHouse/reviews_to_works.git
cd reviews_to_works
- Cоздать и активировать виртуальное окружение:
python3 -m venv venv
source venv/bin/activate
- Обновить pip в виртуальном окружении:
python3 -m pip install --upgrade pip
- Установить зависимости из файла requirements.txt:
pip install -r requirements.txt
- Перейти в папку проекта:
cd api_yamdb
- Выполнить миграции:
python3 manage.py migrate
- Запустить проект:
python3 manage.py runserver
Получение документации проекта (ТЗ): GET http://127.0.0.1:8000/redoc/
Регистрация пользователя: POST http://127.0.0.1:8000/api/v1/auth/signup/
Получение списка произведений: GET http://127.0.0.1:8000/api/v1/titles/
Создание произведения: POST http://127.0.0.1:8000/api/v1/titles/