2013-03-14 2 views
2

В Django 1.5 У меня есть свои страницы, чтобы работать красиво, пока я не попытаюсь использовать {% url%} для отображения ссылки. Я прочитал несколько документов Django и просмотрел Stack Overflow, но я не могу заставить свой элемент работать.Django 1.5 NoReverseMatch at/blog/

Кто-нибудь видит, что я делаю неправильно здесь?

Я получаю ошибку

NoReverseMatch at /blog/ 
Reverse for 'single' with arguments '(1,)' and keyword arguments '{}' not found. 

urls.py

urlpatterns = patterns('', 
    url(r'^$', blog, name = 'blog'), 
    url(r'^(?P<id>(\d+))/$', single, name = 'single') 
) 

blog.html

<a href="{% url 'single' o.id %}">Read More</a> 

РЕШЕНИЕ

РЕШЕНИЕ

РЕШЕНИЕ

Это глупо, что точка с запятой!

<a href="{% url 'blog:single' o.id %}">Read More</a> 

urlpatterns = patterns('', 
    url(r'^$', blog, name = 'blog'), 
    url(r'^(?P<id>\d+)/$', single, name = 'single') 
) 
+1

Вы пробовали без скобок ?: 'url (r '^ (? P \ d +)/$', single, name = 'single')'? – danihp

+0

И для '{% url 'blog'%}' это работает? – sneawo

+0

Ни один из них не работает, и это не работает: 'url (r '^ $', blog, name = 'blog')' и 'Read More' – JREAM

ответ

2

Try:

urlpatterns = patterns('', 
    url(r'^(?P<id>\d+)/$', single, name='single') 
    url(r'^$', blog, name='blog') 
) 

Вам не нужно скобку вокруг рисунка \d+ в этом случае.