def csrf_failure(request, reason='', template_name=CSRF_FAILURE_TEMPLATE_NAME):
 from django.middleware.csrf import REASON_NO_REFERER, REASON_NO_CSRF_COOKIE
 c = {'title': _('Forbidden'), 'main': _('CSRF verification failed. Request aborted.'), 'reason': reason, 'no_referer': (reason == REASON_NO_REFERER), 'no_referer1': _("You are seeing this message because this HTTPS site requires a 'Referer header' to be sent by your Web browser, but none was sent. This header is required for security reasons, to ensure that your browser is not being hijacked by third parties."), 'no_referer2': _("If you have configured your browser to disable 'Referer' headers, please re-enable them, at least for this site, or for HTTPS connections, or for 'same-origin' requests."), 'no_cookie': (reason == REASON_NO_CSRF_COOKIE), 'no_cookie1': _('You are seeing this message because this site requires a CSRF cookie when submitting forms. This cookie is required for security reasons, to ensure that your browser is not being hijacked by third parties.'), 'no_cookie2': _("If you have configured your browser to disable cookies, please re-enable them, at least for this site, or for 'same-origin' requests."), 'DEBUG': settings.DEBUG, 'docs_version': get_docs_version(), 'more': _('More information is available with DEBUG=True.')}
 try:
  t = loader.get_template(template_name)
 except TemplateDoesNotExist:
  if (template_name == CSRF_FAILURE_TEMPLATE_NAME):
   t = Engine().from_string(CSRF_FAILURE_TEMPLATE)
   c = Context(c)
  else:
   raise
 return HttpResponseForbidden(t.render(c), content_type='text/html')

def csrf_failure ( request , reason = '' , template_name = CSRF_FAILURE_TEMPLATE_NAME ) : from django . middleware . csrf import REASON_NO_REFERER , REASON_NO_CSRF_COOKIE c = { 'title' : _ ( 'Forbidden' ) , 'main' : _ ( 'CSRF verification failed. Request aborted.' ) , 'reason' : reason , 'no_referer' : ( reason == REASON_NO_REFERER ) , 'no_referer1' : _ ( "You are seeing this message because this HTTPS site requires a 'Referer header' to be sent by your Web browser, but none was sent. This header is required for security reasons, to ensure that your browser is not being hijacked by third parties." ) , 'no_referer2' : _ ( "If you have configured your browser to disable 'Referer' headers, please re-enable them, at least for this site, or for HTTPS connections, or for 'same-origin' requests." ) , 'no_cookie' : ( reason == REASON_NO_CSRF_COOKIE ) , 'no_cookie1' : _ ( 'You are seeing this message because this site requires a CSRF cookie when submitting forms. This cookie is required for security reasons, to ensure that your browser is not being hijacked by third parties.' ) , 'no_cookie2' : _ ( "If you have configured your browser to disable cookies, please re-enable them, at least for this site, or for 'same-origin' requests." ) , 'DEBUG' : settings . DEBUG , 'docs_version' : get_docs_version ( ) , 'more' : _ ( 'More information is available with DEBUG=True.' ) } try : t = loader . get_template ( template_name ) except TemplateDoesNotExist : if ( template_name == CSRF_FAILURE_TEMPLATE_NAME ) : t = Engine ( ) . from_string ( CSRF_FAILURE_TEMPLATE ) c = Context ( c ) else : raise return HttpResponseForbidden ( t . render ( c ) , content_type = 'text/html' )
default view used when request fails csrf protection .