Add it to MIDDLEWARE_CLASSES and you will get request.current_view getting values like "connection.views.index" or "django.views.static.serve" - one example usage is to show different help text based on current view name.
EDIT: actually, you can use process_view middleware function where you automatically get current_view as first parameter.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | from django.core.urlresolvers import resolve
class GetCurrentViewMiddleware(object):
def process_request(self, request):
try:
current_view = resolve(request.path)[0]
# Handle wrappers
if hasattr(current_view, 'view_func'):
current_view = current_view.view_func
# Saving back to request
setattr(request, 'current_view', '%s.%s' % (current_view.__module__,
current_view.__name__))
except:
pass
|
More like this
- Browser-native date input field by kytta 1 month, 1 week ago
- Generate and render HTML Table by LLyaudet 1 month, 2 weeks ago
- My firs Snippets by GutemaG 1 month, 2 weeks ago
- FileField having auto upload_to path by junaidmgithub 2 months, 3 weeks ago
- LazyPrimaryKeyRelatedField by LLyaudet 3 months ago
Comments
Please login first before commenting.