# 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 atom(request): post_list = Post.objects.all().order_by("-postdate")[0:15] c = { 'postlist': post_list, } return direct_to_template(request, "blog/rss.xml", 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))