gpt4 book ai didi

Django:为什么我可以在模板中反转 URL 而不是在 View 中?

转载 作者:行者123 更新时间:2023-12-04 05:49:57 25 4
gpt4 key购买 nike

django 1.4 中的 URL 反转代码发生了一些奇怪的事情。

我有一个名为 settings.views.app_view 的 View .我已通过手动输入 URL 来查看该页面,以验证基本 URL 模式是否有效。

url(r'^app/$', 'settings.views.app_view', name='settings_app_view'),

我已经在模板中反转了 URL,它可以工作。
{% url settings_app_view %}

因此,URL 模式有效,我可以调用获取模板中的 URL,单击链接并查看正确的页面。

那么为什么我不能使用 reverse() 在 View 中获取 URL?所有的代码都清楚地在那里,不仅如此,当我看到页面并在模板中反转 URL 时,它的配置和工作都非常清楚。

我必须缺少一些小东西;有谁知道它是什么?
ViewDoesNotExist at /settings/app/
Exception Value: Could not import settings.views.app_view. View does not exist in module settings.views.

# The highlighted code
url = reverse("settings_app_view")

最佳答案

reverse() 在你的代码中究竟是在哪里执行的?如果在导入 python 文件期间执行 reverse(),您可以获得递归导入。不幸的是,递归导入可能会产生不同的结果:AttributeError 可能发生在应该具有此属性的模块上......

见:https://docs.djangoproject.com/en/dev/ref/urlresolvers/#reverse-lazy

关于Django:为什么我可以在模板中反转 URL 而不是在 View 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10192063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com