我正在尝试使用Django 1.11中的模板覆盖current_app:
search_form.html由views.search填充:
<html>
<head>
<title>Search</title>
</head>
<body>
...
<p> {% url 'book:index' %} </p>
<p> {% url 'book2:index' %} </p>
{% with current_app as "book2" %}
<p> {% url 'book:index' %} </p>
{% endwith %}
</body>
</html>
这是我的urls.py文件:
urlpatterns = [
...
url(r'^search/', include("books.urls", namespace='book', app_name='book')),
url(r'^search2/', include("books.urls", namespace='book2', app_name='book')),
...
]
books'urls.py:
urlpatterns = [
url(r'^$', views.search, name="index")
]
输出结果为:
/search/
/search2/
/search/
我应该得到以下内容:
/search/
/search2/
/search2/
此解决方案基于此answer:
我认为Django可能会发生一些变化,所以这个解决方案不再适用了。
视图中的 reverse(..., current_app = "books2")
仍然有效并显示:“/ search2 /”虽然。
感谢您的时间。