我正在开发自己的博客。一切都很好。我尝试准备部署但没有成功。现在我撤消所有更改,但命名url现在不工作(它们之前完美地工作): 错误:
使用参数'()'和未找到关键字参数'{}来反转''main_page''
URL:
urlpatterns = patterns('',
url(r'^$', main_page, name='main_page'),
url(r'^blog/', include('blog.blogurls')),
url(r'^comments/', include('django.contrib.comments.urls')),
)
主页面视图:
def main_page(request):
object_list = Article.objects.all()
return render_to_response('blog/main_page.html', {'Latest': object_list}
名为url的用于:
<p><a href="{% url 'main_page' %}">home</a></p>
答案 0 :(得分:0)
将{% url 'main_page' %}
替换为{% url main_page %}
。
引自django 1.5 changelog:
一个值得注意的弃用功能是转向“新式”网址 标签。在Django 1.3之前,解释了{%url myview%}之类的语法 不正确(Django认为“myview”是一个文字名称 视图,而不是名为myview的模板变量。 Django 1.3及以上版本 引入了{%load url from future%}语法来引入 纠正了将myview视为变量的行为。
这样做的结果是,如果你没有使用{%load url from 您的模板中的未来%},您需要更改{%url myview%}到{%url“myview”%}。如果您使用的是{%load url 未来%}你可以简单地删除Django 1.5下的那行