views.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:dream_blog 作者: fanlion 项目源码 文件源码
def category(request, pk):
    """
    ??????????????
    :param request:
    :param pk: ????
    :return:
    """
    cate = get_object_or_404(Category, pk=pk)
    if cate.is_pub:
        post_list = Post.objects.filter(category=cate).filter(is_pub=True).order_by('-create_time')
    else:
        raise Http404('????????')

    page = request.GET.get('page')

    is_paginated = False
    if post_list.count() > PAGE_SIZE:
        is_paginated = True

    paginator = Paginator(post_list, PAGE_SIZE)
    try:
        page_obj = paginator.page(page)
    except PageNotAnInteger:
        # ??page??????????
        page_obj = paginator.page(1)
    except EmptyPage:
        # ??page?????????????
        page_obj = paginator.page(paginator.num_pages)

    # pagination_data????????????
    pagination_data = PaginationBlogPost(paginator=paginator, page_obj=page_obj,
                                         is_paginated=is_paginated).pagination_data()

    pagination_data['post_list'] = page_obj
    pagination_data['page_obj'] = page_obj
    pagination_data['paginator'] = paginator

    return render(request, 'blog/index.html', pagination_data)


# @cache_page(60 * 30)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号