Пагинация Django в React

Я пытаюсь установить пагинацию django в react.

views.py

def post_list(request):
    posts = Post.published.all()
    serializer = PostSerializer(posts, many=True)
    paginator = Paginator(posts, 2)
    page = request.GET.get('page')
    venues = paginator.get_page(page)
    context = {'posts': json.dumps(serializer.data),
               'venues': venues,
               'has_next': venues.has_next,
               'has_previous': venues.has_previous,
               'num_pages': venues.paginator.num_pages,
               'previous_page_number': venues.previous_page_number,
               'num_current': venues.number}
    return render(request, 'frontend/index.html', context)

Я закончил большую часть работы, но не могу придумать решение одной проблемы. Когда я пытаюсь выполнить цикл venues из views.py, я получаю ошибку. Что я имею в виду:

  • Внутри моего компонента React:

{JSON.parse(posts).map((post, index) =>

<div>

<p key={index}>{post.title}</p>

<p key={index}>{post.body}</p>

</div>

)}

Но у меня 6 постов, и я хочу отображать только 2 на странице. Поэтому я сделал

{JSON.parse(venues).map((post, index) =>

как в классическом django.

Когда JSON.parse удаляется, ошибка заключается в том, что map() не является функцией.

Вернуться на верх