Skip to content

YaMDB — a service for publishing reviews of films, books and music.

Notifications You must be signed in to change notification settings

gainbikhner/api_yamdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YaMDB

Описание

База отзывов пользователей о фильмах, книгах и музыке. Произведения делятся на категории, произведению может быть присвоен жанр из списка предустановленных. Добавлять произведения, категории и жанры может только администратор. Пользователи оставляют к произведениям текстовые отзывы и ставят произведению оценку в диапазоне от одного до десяти; из пользовательских оценок формируется усреднённая оценка произведения — рейтинг. На одно произведение пользователь может оставить только один отзыв. Пользователи могут оставлять комментарии к отзывам. Добавлять отзывы, комментарии и ставить оценки могут только аутентифицированные пользователи.

Авторы

Стек технологий

  • Django
  • Django filters
  • DRF
  • JWT

Документация API

http://127.0.0.1:8000/redoc/

Инструкция

Как запустить проект

Клонировать репозиторий и перейти в него в командной строке:

git clone https://github.com/gainbikhner/api_yamdb.git
cd api_yamdb

Cоздать и активировать виртуальное окружение:

python3 -m venv env
source env/bin/activate

Установить зависимости из файла requirements.txt:

python3 -m pip install --upgrade pip
pip install -r requirements.txt

Выполнить миграции:

python3 manage.py migrate

Запустить проект:

python3 manage.py runserver

Создать юзера для админки:

python3 manage.py createsuperuser

Примеры

Запросы к API

Регистрация:

http://127.0.0.1:8000/api/v1/auth/signup/
{
  "email": "[email protected]",
  "username": "string"
}
http://127.0.0.1:8000/api/v1/auth/token/
{
  "username": "string",
  "confirmation_code": "string"
}

Получить список всех произведений:

http://127.0.0.1:8000/api/v1/titles/
{
  "count": 0,
  "next": "string",
  "previous": "string",
  "results": [
    {
      "id": 0,
      "name": "string",
      "year": 0,
      "rating": 0,
      "description": "string",
      "genre": [
        {
          "name": "string",
          "slug": "string"
        }
      ],
      "category": {
        "name": "string",
        "slug": "string"
      }
    }
  ]
}

Оставить отзыв:

http://127.0.0.1:8000/api/v1/titles/{title_id}/reviews/
{
  "text": "string",
  "score": 1
}

About

YaMDB — a service for publishing reviews of films, books and music.

Topics

Resources

Stars

Watchers

Forks