码迷,mamicode.com
首页 > Web开发 > 详细

'url' requires a non-empty first argument. The syntax changed in Django 1.5, see the docs

时间:2014-11-19 02:14:32      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:problem   release   started   error   

Django运行时出现‘url‘ requires a non-empty first argument的解决办法:

参考了stackoverflow里面的一个帖子

I started using Django release 1.5 and got a problem with my old code:

<a href="{% url auto.views.viewpost post.slug %}"><h3>{{post.title}}</h3></a>
Error: ‘url‘ requires a non-empty first argument. The syntax changed in Django 1.5, see the docs. Docs:

One deprecated feature worth noting is the shift to “new-style” url tag. Prior to Django 1.3, syntax like {% url myview %} was interpreted incorrectly (Django considered "myview" to be a literal name of a view, not a template variable named myview). Django 1.3 and above introduced the {% load url from future %} syntax to bring in the corrected behavior where myview was seen as a variable.

The upshot of this is that if you are not using {% load url from future %} in your templates, you’ll need to change tags like {% url myview %} to {% url "myview" %}. If you were using {% load url from future %} you can simply remove that line under Django 1.5



#该代码片段来自于: http://www.sharejs.com/codes/python/7007

大概意思就是说:原来写成:{%url myview%} 这样的语句在1.5以前的版本是可以通过的,
更换到1.5的版本以后要写成:{%url "myview"%}

经过测试的确如此。

'url' requires a non-empty first argument. The syntax changed in Django 1.5, see the docs

标签:problem   release   started   error   

原文地址:http://262242.blog.51cto.com/252242/1579183

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!