我有一个'accounts:produce_setup'的网址(即名称空间/应用是'accounts',而网址的名称是'product_setup')。我想构建与此视图关联的完整网址,并将其作为上下文传递到模板中。
我将如何去做?我会使用build_absolute_uri()吗?
谢谢!
答案 0 :(得分:2)
您应将您的应用程序包含在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>
祝你好运:)
答案 1 :(得分:1)