django 1.4上的Django url模板标记{%url%}错误

时间:2012-11-20 13:11:36

标签: django django-templates django-1.4

我做了很多次,但是这次都有效。

当我尝试使用{%url path.to.view%} django的模板tage时出现此错误:

  

/ login /'str'对象的AttributeError没有属性'regex'


urls.py(主要)

urlpatterns= patterns('', (r'', include('authenticate.urls')),  )

urls.py(我的应用)

urlpatterns= patterns('authenticate.views', url(r'^login/$','login'),)

的login.html

{{ form }}
{% url authenticate.views.login %} < --- Error comes here

视图中的

return render_to_response('login.html',{'form':form},context_instance=RequestContext(request),  )

不适用于:

 {% url authenticate.views.login %}
 {% url 'authenticate.views.login' %}
 {% url "authenticate.views.login" %}

这是关于django 1.4;我可能做错了什么,或者在那个版本的django中我错过了什么?

提前致谢!


更新

我还可以补充一点,在我的视图中使用反向不起作用,并且上面给出了同样的错误:

from django.core.urlresolvers import reverse

result = reverse('django.contrib.auth.views.password_reset')         
HttpResponse(result)

错误:

  

/ abc /'str'对象的AttributeError没有属性'regex'

2 个答案:

答案 0 :(得分:0)

检查一下 https://docs.djangoproject.com/en/1.4/topics/http/urls/

您可以为网址添加名称以帮助推荐。 还要检查您如何声明模式。它应该这样做:

urlpatterns = patterns('',
    url(r'^archive/(\d{4})/$', archive, name="full-archive"),
    url(r'^archive-summary/(\d{4})/$', archive, {'summary': True}, "arch-summary"),
) 

答案 1 :(得分:0)

我明白了:))

问题不在url模板标签中,而是在另一个url文件中包含在主文件中;问题直到我的应用程序才显示。点击url模板tage或django的反向方法,否则,django不会抱怨任何网址!!