Skip to content

Lozhkin-pa/api_yatube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API Yatube

Проект Yatube — это платформа для публикаций, блог. У пользователей есть возможность публиковать и управлять записями.

В проекте api_yatube есть приложение posts с описанием моделей Yatube. Реализация логики API вынесена в отдельное приложение api.

API доступен только аутентифицированным пользователям. Аутентифицированный пользователь авторизован на изменение и удаление своего контента, в остальных случаях доступ предоставляется только для чтения.

Используемые технологии и библиотеки

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

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

git clone https://github.com/Lozhkin-pa/api_final_yatube.git
cd api_final_yatube

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

python3 -m venv env
  • Если у вас Linux/macOS

    source env/bin/activate
    
  • Если у вас windows

    source env/scripts/activate
    
python3 -m pip install --upgrade pip

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

pip install -r requirements.txt

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

python3 manage.py migrate

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

python3 manage.py runserver

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

Для взаимодействия с ресурсами описаны и настроены эндпоинты:

  • api/v1/jwt/create/ (POST): передаём логин и пароль, получаем токен.

  • api/v1/posts/ (GET, POST): получаем список всех постов или создаём новый пост.

  • api/v1/posts/{post_id}/ (GET, PUT, PATCH, DELETE): получаем, редактируем или удаляем пост по id.

  • api/v1/groups/ (GET): получаем список всех групп.

  • api/v1/groups/{group_id}/ (GET): получаем информацию о группе по id.

  • api/v1/posts/{post_id}/comments/ (GET, POST): получаем список всех комментариев поста с id=post_id или создаём новый, указав id поста, который хотим прокомментировать.

  • api/v1/posts/{post_id}/comments/{comment_id}/ (GET, PUT, PATCH, DELETE): получаем, редактируем или удаляем комментарий по id у поста с id=post_id.

  • api/v1/follow/ (GET, POST): получаем все подписки пользователя, сделавшего запрос, или подписываемся на пользователя переданного в теле запроса.

Автор

Павел Ложкин

About

Платформа для публикаций

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published