Документация: http://127.0.0.1:8000/redoc/
- Создание пользователя.
- Получение токена аутентификации пользователя.
- Просмотр списка публикаций и информации о конкретной публикации.
- Размещение и изменение публикаций с возможностью указания группы.
- Просмотр всех комментариев к конкретной публикации и отдельного комментария.
- Размещение и редактирование комментариев.
- Просмотр списка существующих групп и информации об конкретной группе.
- Возможность подписаться на конкретного автора и увидеть список подписок.
- Python 3.7
- Django Rest Framework 3.2
- SQLite
- Djoser 4.8
- Pillow 9.3
- Клонировать репозиторий и перейти в него в командной строке:
git clone [email protected]:4kolesov/api_final_yatube.git
cd api_final_yatube
- Cоздать и активировать виртуальное окружение:
python -m venv env
source env/bin/activate
- Обновить pip (опционально)
python -m pip install --upgrade pip
- Установить зависимости из файла requirements.txt:
pip install -r requirements.txt
- Перейти в директорию с файлом manage.py и выполнить миграции:
cd yatube_api
python3 manage.py migrate
- В директории с файлом manage.py запустить проект
python manage.py runserver
GET Получение публикаций api/v1/posts/ Получить список всех публикаций. При указании параметров limit и offset выдача должна работать с пагинацией. Статус код
200:
{
"count": 123,
"next": "http://api.example.org/accounts/?offset=400&limit=100",
"previous": "http://api.example.org/accounts/?offset=200&limit=100",
"results": [
{
"id": 0,
"author": "string",
"text": "string",
"pub_date": "2021-10-14T20:41:29.648Z",
"image": "string",
"group": 0
}
]
}
POST Создание публикации api/v1/posts/{post_id}/comments/ Добавление нового комментария к публикации. Анонимные запросы запрещены. Статус код
200:
Запрос:
{
"text": "string"
}
Ответ сервера:
{
"id": 0,
"author": "string",
"text": "string",
"created": "2019-08-24T14:15:22Z",
"post": 0
}
Статус код 404:
{
"detail": "Страница не найдена."
}