title: Django - Why does context.get('request') return a None value?
body: <p>Django version 1.8</p>
  
  <pre><code>@register.simple_tag(takes_context=True)
  def current(context, url_name):
      print(context)
      print(context.get('request'))
  
      current_path = context.get('request').path
  
      return 'active' if current_path.startswith(url_name) else ''
  
  
  &gt;&gt;&gt; [{'True': True, 'False': False, 'None': None}, {'csrf_token': &lt;django.utils.functional.lazy.&lt;locals&gt;.__proxy__ object at 0x7f61d288b860&gt;, 'links': OrderedDict([('index', 'home'), ('products', 'prodotti'), ('contact_us', 'contattaci')])}, {'forloop': {'counter0': 2, 'revcounter': 1, 'revcounter0': 0, 'counter': 3, 'parentloop': {}, 'last': True, 'first': False}}, {'name': 'contattaci', 'key': 'contact_us'}]
  &gt;&gt;&gt; None
  </code></pre>
  
  <p>The response of the second print is actually None, but i can't figure out the reason. Seems like the 'request' object doesn't exist, or isn't available at all.</p>
  
  <p>This is the interested part in the module settings.py.</p>
  
  <pre><code>    TEMPLATES = [
      {
          'BACKEND': 'django.template.backends.django.DjangoTemplates',
          'DIRS': [],
          'APP_DIRS': True,
          'OPTIONS': {
              'context_processors': [
                  'django.template.context_processors.debug',
                  'django.template.context_processors.request',
                  'django.contrib.auth.context_processors.auth',
                  'django.contrib.messages.context_processors.messages',
              ],
          },
      },
  ]
  </code></pre>