Skip to content

foggy54/api_yamdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Групповой проект «Yamdb»

Описание:

Проект YaMDb собирает отзывы (Review) пользователей на произведения (Titles). Произведения делятся на категории: «Книги», «Фильмы», «Музыка». Список категорий (Category) может быть расширен (например можно добавлять категорию "Изобразительное исскуство" или "Ювелирка").

Сами произведения в YaMDb не хранятся, здесь нельзя посмотреть фильм или послушать музыку.

В каждой категории есть произведения: книги, фильмы или музыка. Например, в категории «Книги» могут быть произведения «Винни Пух и все-все-все» и «Марсианские хроники», а в категории «Музыка» -песня "Давеча" группы "Насекомые" и сторая сюита Баха. Произведению может быть присвоен жанр (Genre) из списка предустановленных (например, «Сказка», «Рок» или «Артхаус»). Новые жанры может создавать только администратор.

Благодарные или возмущённые читатели оставляют к произведениям текстовые отзывы (Review) и выставляют произведению рейтинг (оценку в диапазоне от одного до десяти). Из множества оценок высчитывается средняя оценка произведения.

Функционал:

REVIEWS

  1. Получить список всех отзывов
  2. Создать новый отзыв
  3. Получить отзыв по id
  4. Частично обновить отзыв по id
  5. Удалить отзыв по id

COMMENTS

  1. Получить список всех комментариев к отзыву по id
  2. Создать новый комментарий для отзыва
  3. Получить комментарий для отзыва по id
  4. Частично обновить комментарий к отзыву по id
  5. Удалить комментарий к отзыву по id

AUTH

  1. Отправление confirmation_code на переданный email
  2. Получение JWT-токена в обмен на email и confirmation_code

USERS

  1. Получить список всех пользователей
  2. Создание пользователя
  3. Получить пользователя по username
  4. Изменить данные пользователя по username
  5. Удалить пользователя по username
  6. Получить данные своей учетной записи
  7. Изменить данные своей учетной записи

CATEGORIES

  1. Получить список всех категорий
  2. Создать категорию
  3. Удалить категорию

GENRES

  1. Получить список всех жанров
  2. Создать жанр
  3. Удалить жанр

TITLES

  1. Получить список всех объектов
  2. Создать произведение для отзывов
  3. Информация об объекте
  4. Обновить информацию об объекте
  5. Удалить произведение

####Документация к API доступна по адресу http://127.0.0.1:8000/redoc/

###Установка Клонируем репозиторий на локальную машину:

git clone https://github.com/foggy54/api_yamdb.git

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

python -m venv venv

Устанавливаем зависимости:

pip install -r requirements.txt

После создайте в корневой директории файл с названием ".env" и поместите в него:

SECRET_KEY=любой_секретный_ключ_на_ваш_выбор

Применяем миграции:

python manage.py migrate

Опционально импортируем данные:

python manage.py runscript load_data

Запуск:

python manage.py runserver

Распределение задач в команде

Первый разработчик(Иван Плакунов) писал всю часть, касающуюся управления пользователями (Auth и Users): систему регистрации и аутентификации, права доступа, работу с токеном, систему подтверждения через e-mail. Второй разработчик (Игорь Сараев) писал категории (Categories), жанры (Genres) и произведения (Titles): модели, представления и эндпойнты для них. Третий разработчик (Александр Иванченко) занимался отзывами (Review) и комментариями (Comments): описывал модели, представления, настраивал эндпойнты, определял права доступа для запросов и рейтинги произведений.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published