equal
deleted
inserted
replaced
4 |
4 |
5 @author: tc |
5 @author: tc |
6 ''' |
6 ''' |
7 |
7 |
8 from django.conf import settings |
8 from django.conf import settings |
9 from django.core.paginator import Paginator, InvalidPage, EmptyPage |
9 #from django.core.paginator import Paginator, InvalidPage, EmptyPage |
10 from django.db.models import Count |
10 #from django.db.models import Count |
11 #from django.http.response import HttpResponse, HttpResponseForbidden |
11 #from django.http.response import HttpResponse, HttpResponseForbidden |
12 from django.views.generic import ListView#, DetailView, View |
12 from django.shortcuts import get_object_or_404 |
|
13 from django.views.generic import ListView, DetailView#, View |
13 #from django.views.generic.list import MultipleObjectMixin |
14 #from django.views.generic.list import MultipleObjectMixin |
14 from .models import Record |
15 from .models import Record |
15 from .forms import RecordFilterForm |
16 from .forms import RecordFilterForm |
16 import logging |
17 import logging |
|
18 |
17 |
19 |
18 logger = logging.getLogger(__name__) |
20 logger = logging.getLogger(__name__) |
19 |
21 |
20 class RecordListView(ListView): |
22 class RecordListView(ListView): |
21 |
23 |
40 filter_form = self.form_class(self.request.GET) |
42 filter_form = self.form_class(self.request.GET) |
41 if filter_form.is_valid(): |
43 if filter_form.is_valid(): |
42 return filter_form.get_filter_qs(qs) |
44 return filter_form.get_filter_qs(qs) |
43 else: |
45 else: |
44 return qs |
46 return qs |
|
47 |
|
48 |
|
49 class RecordDetailView(DetailView): |
|
50 |
|
51 model = Record |
|
52 template_name = "p4l/p4l_record_view.html" |
|
53 slug_field = "uri" # Even if it is useless because we override get_objet |
|
54 |
|
55 def get_object(self, queryset=None): |
|
56 if "uri" not in self.request.GET: |
|
57 raise AttributeError(u"Record view must be called uri GET parameter") |
|
58 |
|
59 return get_object_or_404(Record.objects.select_related("language").prefetch_related('titles'), uri=self.request.GET["uri"]) |
|
60 |
|
61 |