fixed get_context_data() would never pull event from an Hanchan Model.
This commit is contained in:
@@ -37,14 +37,14 @@ class EventDetailMixin(object):
|
||||
|
||||
:return: TemplateContext object"""
|
||||
context = super(EventDetailMixin, self).get_context_data(**kwargs)
|
||||
if hasattr(self, 'event'):
|
||||
if getattr(self, 'event'):
|
||||
context['event'] = self.event
|
||||
elif hasattr(self, 'object') and isinstance(self.object, models.Event):
|
||||
elif isinstance(getattr(self, 'object'), models.Event):
|
||||
context['event'] = self.object
|
||||
elif hasattr(self, 'object') and hasattr(self.object, 'event'):
|
||||
elif getattr(getattr(self, 'object'), 'event'):
|
||||
context['event'] = self.object.event
|
||||
else:
|
||||
print("No Event in Context!")
|
||||
raise ImproperlyConfigured("No Event in Context!")
|
||||
return context
|
||||
|
||||
def get_queryset(self):
|
||||
@@ -55,11 +55,21 @@ class EventDetailMixin(object):
|
||||
"""
|
||||
if self.model == models.Event:
|
||||
self.event = get_object_or_404(models.Event, pk=self.kwargs['pk'])
|
||||
queryset = self.model.objects.all()
|
||||
else:
|
||||
self.event = get_object_or_404(models.Event,
|
||||
pk=self.kwargs['event'])
|
||||
queryset = self.model._default_manager.all()
|
||||
elif self.kwargs.get('event'):
|
||||
self.event = get_object_or_404(
|
||||
models.Event,
|
||||
pk=self.kwargs['event'])
|
||||
queryset = self.model.objects.filter(event=self.event)
|
||||
elif self.model:
|
||||
queryset = self.model._default_manager.all()
|
||||
else:
|
||||
raise ImproperlyConfigured(
|
||||
"%(cls)s is missing a QuerySet. Define "
|
||||
"%(cls)s.model, %(cls)s.queryset, or override "
|
||||
"%(cls)s.get_queryset()." % {
|
||||
'cls': self.__class__.__name__
|
||||
})
|
||||
return queryset.prefetch_related()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user