add a latest method to query the latest x events

This commit is contained in:
2017-11-23 14:15:12 +01:00
parent 92470514c4
commit 68c484afc9
8 changed files with 81 additions and 77 deletions

View File

@@ -1,4 +1,6 @@
"""Mixins for Events."""
from django.http import Http404
from . import models
@@ -9,7 +11,6 @@ class EventArchiveMixin(object):
date_field = 'start'
make_object_list = True
model = models.Event
ordering = ('start', 'end')
paginate_by = 15
template_name = 'events/event_archive.html'
@@ -40,3 +41,16 @@ class EventDetailMixin(object):
elif hasattr(self, 'object') and hasattr(self.object, 'event'):
context['event'] = self.object.event
return context
def get_queryset(self):
"""set event attribute from the URL kwarg event and
load all related objects from the set model.
:return: a django QuerySets
"""
try:
self.event = models.Event.objects.get(pk=self.kwargs['event'])
queryset = self.model.objects.filter(event=self.event)
except models.Event.DoesNotExist:
raise Http404(_('Event does not exist'))
return queryset.prefetch_related()