Тестовое задание для kvartirka.com (STRATEGIA)

https://img.shields.io/badge/Python-3.8.5-blue https://img.shields.io/badge/Django-3.2.13-blue https://img.shields.io/badge/Django_REST_framework-3.3.13-blue


Реализовать REST API для системы комментариев блога.

Функциональные требования:

  • У системы должны быть методы API, которые обеспечивают:
    • Добавление статьи (Можно чисто номинально, как сущность, к которой крепятся комментарии).
    • Добавление комментария к статье.
    • Добавление комментария в ответ на другой комментарий (возможна любая вложенность).
    • Получение всех комментариев к статье вплоть до 3 уровня вложенности.
    • Получение всех вложенных комментариев для комментария 3 уровня.
    • По ответу API комментариев можно воссоздать древовидную структуру.

Запуск в docker:

docker-compose up

После сборки сервис будет доступен по адресу - http://localhost:8000/


Система имеет следующие эндпоинты:

  • posts/ - Получение всех статей, добавление нового поста через POST запрос с параметрами - posts/?title=заголовок&text=тело поста
  • posts/id/ - Получение определенного поста по его id
  • comment/ - Получение всех комментариев, добавление нового комментария для статьи через POST запрос с параметрами - comment/?post=44&text=тело поста&parent=7, parent является опциональным параметром, указывается для добавления комментария к комментарию
  • all_comment/id/ - Получение всех комментариев вложенностью до третьего уровня для статьи - all_comment/44/
  • third_comment/id> - Получение всех вложенных комментариев для комментария - third_comment/7/