djangodjango-generic-viewsrequestcontextdjango-class-based-views

How to access RequestContext in class-based generic views?


I have this path in my urls.py:

archive_index_dict = {
    'queryset': News.objects.filter(show=True),
    'date_field': 'date',
    'template_object_name': 'object_list',
}

...

url(r'^$', 'django.views.generic.date_based.archive_index',
        archive_index_dict, name='news_archive_index'
    ),

Now I want to detect in template if a page is current (this is for menu styling). Neither {{ request.path }} nor {{ request.get_full_path }} work in template.

What should I use instead?

SOLUTION

To get request available in templates I had to add django.core.context_processors.request to TEMPLATE_CONTEXT_PROCESSORS. This is not set by default (since django 1.3).


Solution

  • Do you have 'django.core.context_processors.request' context processor set up? Almost all CBV use RequestContext by default