在 Django 中,您如何引用您的项目 urls.py URL?
In Django, how do you reference your project urls.py URLs?
我正在制作一个包含多个应用程序的 django 项目。我的目录结构是这样的:
DjangoProject
project_dir
settings.py
urls.py
wsgi.py
app1
urls.py
...
app2
urls.py
...
我了解如何访问我的模板中的网址,这些网址是带有 {% url 'app1:url1' %}
的应用程序的一部分,但那是因为在我的应用程序 urls.py 文件中,我可以这样做:
app_name = 'app1'
urlpatterns = [
path('', views.view1, name='home'),
]
项目 urls.py 文件似乎与应用程序 URL 不同。您不能给项目 urls.py 文件一个 app_name
那么应该如何从模板内部引用项目 url?我一直只是依赖这样的相对链接:<a href="/global_url"></a>
但是如果我想更改 /global_url 的路径,我必须去更新我所有的硬编码模板 url。
我是个白痴。因此,当您在项目 urls.py 文件中为 url 命名时,当您想在模板中引用它时,只需省略 app:
部分即可。所以像
urlpatterns = [
path('global_url/', global_views.global_view1, name='global1')
]
在您的模板中可以像这样访问:{% url 'global1' %}
我正在制作一个包含多个应用程序的 django 项目。我的目录结构是这样的:
DjangoProject
project_dir
settings.py
urls.py
wsgi.py
app1
urls.py
...
app2
urls.py
...
我了解如何访问我的模板中的网址,这些网址是带有 {% url 'app1:url1' %}
的应用程序的一部分,但那是因为在我的应用程序 urls.py 文件中,我可以这样做:
app_name = 'app1'
urlpatterns = [
path('', views.view1, name='home'),
]
项目 urls.py 文件似乎与应用程序 URL 不同。您不能给项目 urls.py 文件一个 app_name
那么应该如何从模板内部引用项目 url?我一直只是依赖这样的相对链接:<a href="/global_url"></a>
但是如果我想更改 /global_url 的路径,我必须去更新我所有的硬编码模板 url。
我是个白痴。因此,当您在项目 urls.py 文件中为 url 命名时,当您想在模板中引用它时,只需省略 app:
部分即可。所以像
urlpatterns = [
path('global_url/', global_views.global_view1, name='global1')
]
在您的模板中可以像这样访问:{% url 'global1' %}