【问题标题】:Django url tag : maximum recursion depth exceededDjango url标签:超出最大递归深度
【发布时间】:2011-09-19 09:27:11
【问题描述】:

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

我有两个 urls 文件:

根之一:

    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 对象时超出最大递归深度

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

谢谢你,对不起我的英语不好!

维克多

【问题讨论】:

  • 请发布 full urls.py,尤其是特定于应用程序的 - 你有一个 += 那里,我想知道是什么已添加。

标签: python django


【解决方案1】:

您正在包含您的 app.urls 并在您的应用程序 urls.py 中使用 +=。这会导致超出最大递归深度错误。

保留您的 urls.py 并将您的 app/urls.py 更改为:

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

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

【讨论】:

    猜你喜欢
    • 2017-08-09
    • 2011-03-31
    • 2013-02-20
    • 2013-12-01
    • 2019-01-18
    • 2013-03-03
    • 2017-03-24
    • 2011-12-31
    相关资源
    最近更新 更多