From 4b29603d79cc1f79c66786684f27ec9abfbaa825 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Mon, 17 Oct 2011 01:34:04 +0200 Subject: Initial commit --- blog/views.py | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 blog/views.py (limited to 'blog/views.py') diff --git a/blog/views.py b/blog/views.py new file mode 100644 index 0000000..06a4aba --- /dev/null +++ b/blog/views.py @@ -0,0 +1,55 @@ +# Create your views here. +from django.http import HttpResponse +from django.shortcuts import render_to_response +from django.template import Context, loader +from django.views.generic.simple import direct_to_template +from blog.models import Post, Tag + +def index(request, page=0): + item_count = 7 + + page = int(page) + start_num = (page * item_count) + end_num = start_num + item_count + + post_list = Post.objects.all().order_by("-postdate")[start_num:end_num] + + has_previous = page > 0 + has_next = end_num < Post.objects.all().count() + + c = { + 'postlist': post_list, + 'has_next': has_next, + 'has_previous': has_previous, + 'next_page': page + 1, + 'previous_page': page - 1 + } + + return direct_to_template(request, "blog/posts.html", c) + +def post(request, post_id): + post = Post.objects.filter(pk=post_id) + t = loader.get_template("blog/posts.html") + c = Context({ + 'postlist': post, + }) + + return HttpResponse(t.render(c)) + +def tags(request): + tag_list = Tag.objects.all() + t = loader.get_template("blog/tags.html") + c = Context({ + 'taglist': tag_list, + }) + + return HttpResponse(t.render(c)) + +def tag(request, tag_name): + post_list = Post.objects.filter(tags__name=tag_name) + t = loader.get_template("blog/posts.html") + c = Context({ + 'postlist': post_list, + }) + + return HttpResponse(t.render(c)) -- cgit v1.2.3-54-g00ecf