Django url标记:超出最大递归深度

时间:2011-06-21 10:03:44

标签: python django

我正在努力解决以下问题:

我有两个网址文件:

根源:

    urlpatterns = patterns('',
        ...
        (r'^demonstrator/', include('powernest.demonstrator.urls')),
        ...
    )

和申请一:

    urlpatterns += patterns('demonstrator.views',
        ...
        url(r'^demonstrator/choices/$', 'demo_choices', d_demo_choice, name="demo_choices"),
        ...
    )

相关视图:

    def demo_choices(request, template_name, action):
        ...
        return render_to_response(template_name, datas, context_instance=RequestContext(request))

当我尝试在模板中调用命名url“demo_choices”时,感谢{%url demo_choices%},我收到了TemplateSyntaxError异常:

渲染时捕获异常:调用Python对象时超出了最大递归深度

我花了很多时间没有搞清楚!请帮忙 !

谢谢你,对不起我糟糕的英语!

维克多

1 个答案:

答案 0 :(得分:0)

您要在app urls.py中添加app.urls并使用+=。这导致最大递归深度超出错误。

保持您的urls.py不变,并将您的app / urls.py更改为:

urlpatterns = patterns('demonstrator.views',
    ...
    url(r'^choices/$', 'demo_choices', d_demo_choice,  name="demo_choices"),
    ...
)

请注意,您在url正则表达式中并不需要额外的“演示者”部分。希望有所帮助。