@alapys

Как получить JSON у отдельного поста?

Пишу приложение на Django и встал вопрос, у меня есть стена с постами. Нажимаю на него, переходит по url - path('post/<post_id>-<post_slug>/', showPost)
Обрабатывается во views:
post = get_object_or_404(Post, pk=post_id)
     dataForPage = {
         'post': post,
         'header': header,
}
return render(request, 'post.html', context=dataForPage)

Соответственно, не понимаю, как написать функцию, которая будет отдельно получать pk и по нему строить json запрос на другой странице(/api/json-post)
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
AlexNest
@AlexNest
Работаю с Python/Django
Тут 2 пути:
Создавать из полученного queryset словарь вручную и отдавать через JsonResponse.
Использовать DRF.
Первый вариант можно использовать, если вам нужно создать несколько "простых" json`ов, не требующих особой защиты.
Второй - если нужно получать сложные json`ы (Условный пример: нужно получить автора и все его публикации за последнюю неделю и, например, самый популярный коммент для каждого поста). При этом, чтобы все внешние связи были человекочитаемыми) или же нужно ограничить доступ к данным (напр. список черновиков может видеть только автор).
p.s. Безусловно, второй вариант можно решить и штатными методами, но человеко-часов потрачено будет на порядок больше.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы