def get(self, request):
user = request.user
comments = Comment.objects.all().filter(deleted=False).filter(user=user).order_by('-created')
posts = Post.objects.all().filter(deleted=False).filter(user=user).order_by('-created')
total_count = Comment.objects.all().filter(deleted=False).filter(user=user).count() + Post.objects.all().filter(deleted=False).filter(user=user).count()
all_items = chain(comments, posts)
all_items = sorted(all_items, key=attrgetter('created'), reverse=True)
paginator = Paginator(all_items, self.paginate_by)
page = request.GET.get('page')
try:
posts = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
posts = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
posts = paginator.page(paginator.num_pages)
return render(request, self.template_name, {'posts': posts})
评论列表
文章目录