django - 从名称构建 URL
问题描述
我有一个 'accounts:produce_setup' 的 url(即命名空间/应用程序是 'accounts' 并且 url 的名称是 'product_setup')。我想构建与此视图关联的完整 url 并将其作为上下文传递到模板中。
我该怎么做呢?我会使用 build_absolute_uri() 吗?
谢谢!
解决方案
您应该包含您的应用程序project_name/urls.py
并将您的应用程序绑定到特殊的 URL 模式,如下所示:
from account.urls import urlpatterns as account_urlpatterns
urlpatterns = [
url(r'^account/', include(account_urlpatterns, namespace='account')),
url(r'^admin/', admin.site.urls),
]
在此之后,您account/urls.py
可以实现您的 urlpatterns 并为每个 url 设置您的特殊名称,如下所示:
from django.conf.urls import url
from .views import produce_setup_view
urlpatterns = [
url(r'^produce_setup/$', produce_setup_view, name='produce_setup')),
]
最后,现在您可以像这样在您的中使用template
它们views or any python file in your django project
:
.py
在django
项目中:
from django.urls import reverse
url_string = reverse('account:produce_setup')
print(url_string)
>>> '/account/produce_setup/'
在template
:
<a href="{% url "accounts:product_setup" %}"></a>
祝你好运 :)
推荐阅读
- python - 将 Pandas 系列转换为单调的
- celery - 如何防止芹菜任务运行两次?
- python - 具有恒定输入的神经网络层会学习权重吗?
- c# - global.asax 文件 C# 中的 URL 重写规则冲突
- android - 如何调用在kotlin中有参数的传递方法?
- python - 我正在使用 Flask 并出现错误,你能帮帮我吗?
- asp.net-mvc - 登录看起来有效,但没有给出新的声明
- java - 使用卡片视图查看寻呼机
- php - 从 JSONarray 获取值
- javascript - Selenium WebDriver WebElement .findElement 总是返回错误(JavaScript)