diff options
Diffstat (limited to 'ryuslash/aggregator/views.py')
-rw-r--r-- | ryuslash/aggregator/views.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ryuslash/aggregator/views.py b/ryuslash/aggregator/views.py new file mode 100644 index 0000000..bb3c1b7 --- /dev/null +++ b/ryuslash/aggregator/views.py @@ -0,0 +1,22 @@ +from django.core.paginator import Paginator, InvalidPage, EmptyPage +from django.http import Http404 +from django.shortcuts import render + +from .models import Post + +def posts(request, cat, page=1): + category = cat or 'post' + queryset = Post.objects.filter(category=category) + paginator = Paginator(queryset, 20) + + if page == None: + page = 1 + + try: + object_list = paginator.page(page) + except (EmptyPage, InvalidPage): + raise Http404 + + return render(request, 'aggregator/posts.html', + { 'list': object_list, + 'category': category }) |