Проект YaMDb собирает отзывы пользователей на произведения (книги, фильмы и музыка). Произведению может быть присвоен жанр из списка предустановленных. Новые жанры может создавать только администратор. Пользователи оставляют к произведениям текстовые отзывы и ставят произведению оценку в диапазоне от одного до десяти (целое число). На основании оценок рассчитывается общий рейтинг произведения.
1.Пользователь отправляет POST-запрос на добавление нового пользователя с параметрами email и username на эндпоинт /api/v1/auth/signup/.
3.Пользователь отправляет POST-запрос с параметрами username и confirmation_code на эндпоинт /api/v1/auth/token/, в ответе на запрос ему приходит token (JWT-токен). В результате пользователь получает токен и может работать с API проекта, отправляя этот токен с каждым запросом.
4.Для повторного получения письма с кодом подтверждения пользователь отправляет POST-запрос с параметрами username и email на эндпоинт /api/v1/auth/remind/.
5.При желании пользователь отправляет PATCH-запрос на эндпоинт /api/v1/users/me/ и заполняет поля в своём профайле.
6.Если пользователя создаёт администратор, например, через POST-запрос на эндпоинт api/v1/users/ — письмо с кодом также приходит к нему на почту.
-
Аутентифицированный пользователь (user) — может, как и Аноним, читать всё, дополнительно он может публиковать отзывы и ставить оценку произведениям (фильмам/книгам/песенкам), может комментировать чужие отзывы; может редактировать и удалять свои отзывы и комментарии. Эта роль присваивается по умолчанию каждому новому пользователю.
- Python 3.8
- Django 3.2
- Django Rest Framework
- Клонировать репозиторий и перейти в него в командной строке:
git@github.com:SkaDin/api_yamdb.git
cd api_yamdb
- Cоздать и активировать виртуальное окружение:
python -m venv venv
source vens/Scripts/activate
- Установить зависимости из файла requirements.txt:
python -m pip install --upgrade pip
pip install -r requirements.txt
- Выполнить миграции и запустить проект:
python manage.py migrate
python manage.py runserver
http://127.0.0.1/redoc/
MikeWazowskyi
Grindelwaldoff
SkaDin