Вынести это в функцию и передавать ей кверисет и количество постов

Есть три функции:

def index(request):
    text = 'Последние обновления на сайте'
    posts = Post.objects.all()
    paginator = Paginator(posts, 10)
    page_number = request.GET.get('page')
    page_obj = paginator.get_page(page_number)
    context = {'page_obj': page_obj, 'text': text}
    template = 'posts/index.html'
    return render(request, template, context)


def group_posts(request, slug):
    group = get_object_or_404(Group, slug=slug)
    posts = group.posts.select_related('author')[:10]
    paginator = Paginator(posts, 10)
    page_number = request.GET.get('page')
    page_obj = paginator.get_page(page_number)
    context = {'page_obj': page_obj, 'group': group,}
    return render(request, 'posts/group_list.html', context)


def profile(request, username):
    profile = get_object_or_404(User, username=username)
    posts = (Post.objects.select_related("author", "group")
                 .filter(author=profile).all())
    posts_count = posts.count()
    paginator = Paginator(posts, 10)
    page_number = request.GET.get('page')
    page_obj = paginator.get_page(page_number)
    context = {'profile': profile,
        'posts_count': posts_count,
        'page_obj': page_obj,}
    return render(request, 'posts/profile.html', context)

Ревьюер сказал что можно вынести это в функцию и передавать ей кверисет и количество постов. А отдавать она будет page obj. Как правильно это можно переделать?

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