Тестовый проект доступен по адресу: http://130.193.42.85/
Проект YaMDb собирает отзывы пользователей на произведения. Через API администратор может создавать произведения для отзывов, категории и жанры произведений. Пользователям предоставляется возможность писать отзывы на произведения и комментировать их.
Клонировать репозиторий и перейти в него в командной строке:
git clone https://github.com/rodandr13/yamdb_final.git
cd /infra
Развернуть приложение:
docker-compose up -d --build
Выполнить миграции
docker-compose exec web python manage.py migrate
Заполнить базу данными
docker-compose exec web python manage.py loaddata fixtures.json
Загрузить статику
docker-compose exec web python manage.py collectstatic --no-input
Anonymous
Может просматривать описания произведений, читать отзывы и комментарии.
User
Может читать всё, как и Аноним, может публиковать отзывы и ставить оценки произведениям (фильмам/книгам/песенкам), может комментировать отзывы; может редактировать и удалять свои отзывы и комментарии, редактировать свои оценки произведений. Эта роль присваивается по умолчанию каждому новому пользователю.
Moderator
Те же права, что и у Аутентифицированного пользователя, плюс право удалять и редактировать любые отзывы и комментарии.
Admin
Полные права на управление всем контентом проекта. Может создавать и удалять произведения, категории и жанры. Может назначать роли пользователям
Суперюзер Django
Обладет правами администратора
1. Отправить POST-запрос с параметрами email и username на эндпоинт /api/v1/auth/signup/.
2. YaMDB отправляет письмо с кодом подтверждения (confirmation_code) на указанный адрес email.
3. Отправить POST-запрос с параметрами username и confirmation_code на эндпоинт /api/v1/auth/token/, в ответе на запрос приходит token (JWT-токен).
POST /api/v1/categories/
{
"name": "string",
"slug": "string"
}
GET /api/v1/titles/
{
"name": "string",
"year": 0,
"description": "string",
"genre": [
"string"
],
"category": "string"
}
GET /api/v1/titles/
{
"text": "string",
"score": 1
}
- Python
- Django Rest Framework
- Joser
- Simple JWT
- Docker
- PostgreSQL
Родителев Андрей