Django&使用{{url()}}的Jinja2模板

时间:2018-02-08 22:10:40

标签: django jinja2

我正在尝试弄清楚如何使用jinja&#39; s {{url()}}在我的html中传递我的user_id,使用不需要像<html> <body> <tag-name id='menu-item-3352'></tag-name> <script> function turnShopBlue() { var location = window.location.href; if (location === "MY URL GOES HERE") { var menuItem = document.getElementById("menu-item-3352"); menuItem.classList.add("current-menu-item"); //document.querySelector("#menu-item-3352").addClass("current-menu-item"); } } turnShopBlue(); </script> <script external Javascript resources></script> <script external Javascript resources></script> </body> </html> 这样的ID的网址工作正常但我需要将id传递给这个例子:/dashboard/。我试过以下但没有成功:

/user/3

这是我的观点和HTML的一部分:

views.py

{{ url('detail') }}
{{ url('detail', user_id=User.id) }}
{{ url('detail', User.id) }}

dashboard.html

urlpatterns = [
    path('dashboard/', dashboard, name='dashboard'),          
    path('user/<int:user_id>/', detail, name='detail'),    
]

对此的任何帮助将不胜感激,谢谢

2 个答案:

答案 0 :(得分:1)

我找到了解决方案:

{% for User in all_users %}
    {{ url('detail', args=[User.id] )}}
{% endfor %}

答案 1 :(得分:1)

这也有效:

{% url 'detail' user.id %} 

然后,在views.py中,您对应的函数应接收user_id作为参数(内部user.id变成user_id)。