summaryrefslogtreecommitdiff
path: root/app/books/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'app/books/views.py')
-rw-r--r--app/books/views.py44
1 files changed, 12 insertions, 32 deletions
diff --git a/app/books/views.py b/app/books/views.py
index 21f271f..ef1d5f4 100644
--- a/app/books/views.py
+++ b/app/books/views.py
@@ -1,37 +1,17 @@
-from django.shortcuts import render_to_response, get_object_or_404
-from django.template import RequestContext
-from django.http import Http404
-from django.conf import settings
-# from django.views.generic import ListView
+from django.views.generic.detail import DetailView
+from utils.views import PaginatedListView
-from books.models import Book
-from locations.models import Region, Country
-from photos.models import Photo
+from .models import Book
+class BookListView(PaginatedListView):
+ template_name = 'archives/books.html'
-def book_detail(request, slug):
- context = {
- 'object': get_object_or_404(Book, slug__exact=slug),
- 'ratings_range' : range(1, 6)
- }
- return render_to_response('details/book.html', context, context_instance=RequestContext(request))
+ def get_queryset(self):
+ return Book.objects.all().order_by('-read_date').select_related()
-def book_list(request, page):
- request.page_url = '/books/%d/'
- request.page = int(page)
- try:
- is_build = request.POST['builder']
- extra_context={
- 'page':page,
- 'MEDIA_URL': settings.BAKED_MEDIA_URL,
- 'ratings_range': range(1, 6)
- }
- except:
- extra_context={'page':page}
- context = {
- 'object_list': Book.objects.order_by('-read_date').select_related(),
- 'page': page,
- 'ratings_range' : range(1, 6)
- }
- return render_to_response("archives/books.html", context, context_instance=RequestContext(request))
+
+class BookDetailView(DetailView):
+ model = Book
+ template_name = "details/book.html"
+ slug_field = "slug"