Skip to content

API YamDB - review platform for books, music and movies

Notifications You must be signed in to change notification settings

alekseevpy/api_yamdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API YAMDB

О проекте

Проект YaMDb собирает отзывы пользователей на произведения.

Произведения делятся на категории, такие как «Книги», «Фильмы», «Музыка». Список категорий может быть расширен. Произведению может быть присвоен жанр из списка предустановленных (например, «Сказка», «Рок» или «Артхаус»).

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

Пользователи могут оставлять комментарии к отзывам. Добавлять отзывы, комментарии и ставить оценки могут только аутентифицированные пользователи.

Документацию к API можно найти по адресу:

🔗 <<ваш сервер или хостинг>>/redoc после запуска проекта.

Проект выполнялся в команде из 3 человек

Технологии

GIF

Back-end

Python Django

Django Rest Framework

Database

sqlite3

Tools

vscode vscode

Postman Git GitHub

Colaboration

PR_closed

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

  • Клонировать репозиторий и перейти в него в командной строке:
git clone https://github.com/kirill-nasonkin/api_yamdb.git
cd api_yamdb
  • Cоздать и активировать виртуальное окружение:
Unix
python3 -m venv env
source env/bin/activate
Windows
python -m venv env
source env/Scripts/activate
  • Установить зависимости из файла requirements.txt:
Unix
python3 -m pip install --upgrade pip
Windows
python -m pip install --upgrade pip

pip install -r requirements.txt
  • Выполнить миграции:
cd api_yamdb
Unix
python3 manage.py migrate
Windows
python manage.py migrate
  • Дополнительно Для автоматического наполнения БД из csv файлов в папке project_root/static/data применить команду:
Unix
python3 manage.py fill_my_db
Windows
python manage.py fill_my_db
  • Запустить проект:
Unix
python3 manage.py runserver
Windows
python manage.py runserver