Skip to content

AxeUnder/api_yamdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

api_yamdb

Это api-приложение, которое позволяет отправлять запросы (GET, POST, PATCH и DELETE) на сервер к базе данных для изменения записей о произведениях, их рейтинга и отзывов с комментариями к ним. Можно запросить список произведений, пользователей, отзывов или авторизовавшись опубликовать собственный и дать оценку произведению.

Использованные технологии: #Python #Django #Django-rest-framework #Django-rest-framework-simplejwt #Pillow #PyJWT #Django-filter #Isort #Requests

Примеры запросов

Регистрация нового пользователя: POST /api/v1/auth/signup/

{
  "email": "[email protected]",
  "username": "string"
}

Получение списка всех категорий: GET api/v1/categories/

Удаление жанра: DELETE /api/v1/genres/{slug}/

Частичное обновление информации о произведении: PATCH /api/v1/titles/{titles_id}/

{
  "name": "string",
  "year": 0,
  "description": "string",
  "genre": [
    "string"
  ],
  "category": "string"
}

Получение отзыва по id: GET /api/v1/titles/{title_id}/reviews/{review_id}/

Добавление комментария к отзыву: POST /api/v1/titles/{title_id}/reviews/{review_id}/comments/

{
  "text": "string"
}

Получение списка всех пользователей: GET /api/v1/users/

Документация: GET /redoc/

Запуск management команды по импорту csv Файлов

py manage.py import_csv

Запуск проекта на Windows OS

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

git clone https://github.com/lioleg/api_yamdb.git
cd api_yambd

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

python -m venv venv
source venv/Scripts/activate

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

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

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

python manage.py migrate

Запустить сервер:

cd api_yambd
python manage.py runserver

Об авторах

Python-разработчики

AxeUnder, Khatkovskii, lioleg.