NoReverseMatch at / вызвано regex?

При запуске django server возникает следующая ошибка:

NoReverseMatch at /

Reverse for 'about' with arguments '()' and keyword arguments '{}' not found. 1 pattern(s) tried: ['$v$']
Request Method:     GET
Request URL:    http://127.0.0.1:8000/
Django Version:     1.8.6
Exception Type:     NoReverseMatch
Exception Value:    
Reverse for 'about' with arguments '()' and keyword arguments '{}' not found. 1 pattern(s) tried: ['$v$']
Exception Location:     /usr/local/lib/python3.4/dist-packages/django/core/urlresolvers.py in _reverse_with_prefix, line 495

Мой url-адрес в generic app:

url(r'^v$', views.about, name ='about'),
url(r'^$', views.main_view, name= 'main_view'),

Однако, когда я изменяю url ‘about’ на пустой :

url(r'^$', views.about, name ='about'),

О просмотре используется и страница загружается ok. Я не понимаю, как regex разбивает все приложение. Цель состояла в том, чтобы иметь /v/ url в шаблоне html, как это:

 <li role="presentation"><a href="{% url 'generic:about' %}>About page</a></li>

Спасибо за помощь

1 ответ

  1. У вас есть $ в конце вашего шаблона включения, поэтому ни один из включенных шаблонов никогда не будет соответствовать. Удалить его.

      url(r'', include('generic.urls', namespace='generic', app_name='generic')),