Reputation: 1125
I'm in the midst of developing my first template context processor.
It's generating an error: Module "bookings.context_processors" does not define a "context_processors" attribute/class
I've followed a number of examples however this isn't making too much sense to me. Can someone tell me why this error is being generated?
Code's pretty simple:
context_processors.py:
from bookings.models import Booking, BookingItem
def injectBookingObject(request):
try:
booking = request.session['bookingID']
bookingOptions = BookingItem.objects.all().filter(bookingID = booking)
return {
'bookingContents' : bookingOptions,
}
except:
return {}
settings:
TEMPLATE_CONTEXT_PROCESSORS = (
*** usual ones *****
'bookings.context_processors'
)
views.py:
def activity_detail(request, slug):
if request.method == 'GET':
selectedactivity = get_object_or_404(Activity, urlKey=slug)
activityMedia = ActivityMedia.objects.all().filter(
Activity = selectedactivity, MediaStatus = 1,
MediaActiveDate__lte=datetime.datetime.now(),
MediaInactiveDate__gte=datetime.datetime.now()
).exclude(MediaType = 'T').order_by('-MediaType', 'MediaSortOrder')
activityOptions = ActivityOption.objects.all().filter(
Activity = selectedactivity,
ActivityOptionActiveDate__lte=datetime.datetime.now(),
ActivityOptionInactiveDate__gte=datetime.datetime.now()
) | ActivityOption.objects.all().filter(
Activity = selectedactivity,
ActivityOptionActiveDate__lte=datetime.datetime.now(),
ActivityOptionInactiveDate=None
)
equipment = Equipment.objects.all().filter(
activity = selectedactivity
)
instructor = User.objects.get(id=int(selectedactivity.Instructor.id))
context = {
'activity': selectedactivity,
'activityMedia' : activityMedia,
'activityOptions' : activityOptions,
'activityEquipment' : equipment,
'instructor' : instructor,
}
return render(
request,
'activities/activity.html',
context
)
Upvotes: 0
Views: 326
Reputation: 2122
you need
TEMPLATE_CONTEXT_PROCESSORS = (
*** usual ones *****
'bookings.context_processors.injectBookingObject'
)
Upvotes: 5