2011-12-15 1 views
1

Имея проблему с названными маршрутами django. Django продолжает повышение ошибки NoReverseMatch при вызове следующим образом:Django назвал маршруты, не работающие с django.views.generic.simple.redirect_to

urlpatterns += patterns('django.views.generic.simple', 
# tutorials 
    url(r'^tutorials/?$', 'redirect_to', {'url':'/tutorials/markers/'}, name='tutorials'), 
    (r'^tutorials/markers/?$', 'direct_to_template', {'template': 'page_tutorials_markers.html'}), 
) 

# in template: 
<a href="{% url tutorials %}">tutorials</a> 

Это выглядит довольно понятно, но я не могу понять, почему этот маршрут не признаются как имеющие именованный маршрут.

Спасибо,

J

ответ

1

Обратный матч, как правило, терпят неудачу, когда у вас есть дополнительные символы. Как Django узнает, добавить ли конечную косую черту или нет?

Я бы рекомендовал вам удалить знак вопроса, чтобы убедиться, что URL-адреса заканчиваются косой чертой, и полагаться на класс CommonMiddleware, чтобы добавить косые черты, если необходимо.

+0

Спасибо за сообщение. Это может быть хорошим общим советом, однако это не меняет проблему здесь. Я взял вопросительные знаки для обеих записей, и проблема все еще существует. –