django 不匹配模板中调用的模式
django does not match pattern called in template
我正在尝试在模板中调用 {% url %}
以获得动态链接,但我收到错误消息,尽管模式应该匹配。这是我的文件:
urls.py
urlpatterns = [
url(r'^(?P<team_id>[0-9]+)/$', views.detail, name='detail'),
url(r'^$', views.index, name='index'),
]
模板文件
{% for team in teams_list %}
<li><a href="{% url 'detail' team.id %}/">{{ team.name }}</a></li>
{% endfor %}
views.py
def detail(request, team_id):
team = get_object_or_404(Team, id=team_id)
context = {
'teamname' : team.name,
'member_list' : User.objects.filter(team__name=team.name)
}
return render(request, 'teams/detail.html', context)
我试过模拟 django 教程,但我似乎找不到我的错误。错误陈述如下:
Reverse for 'detail' with arguments '(1,)' and keyword arguments '{}' not found. 0 pattern(s) tried: []
线索在错误消息中,特别是和找不到关键字参数“{}”。。
您的模式有关键字匹配,结果将映射到关键字 team_id
,但是您传递的是 位置参数 of 1
(即为什么你的团队 ID 显示在元组中 (1,)
).
要解决此问题,请将您的 url 标签更改为 {% url 'detail' team_id=team.id %}
。
您可以在 url
tag documentation 阅读更多相关信息。
我正在尝试在模板中调用 {% url %}
以获得动态链接,但我收到错误消息,尽管模式应该匹配。这是我的文件:
urls.py
urlpatterns = [
url(r'^(?P<team_id>[0-9]+)/$', views.detail, name='detail'),
url(r'^$', views.index, name='index'),
]
模板文件
{% for team in teams_list %}
<li><a href="{% url 'detail' team.id %}/">{{ team.name }}</a></li>
{% endfor %}
views.py
def detail(request, team_id):
team = get_object_or_404(Team, id=team_id)
context = {
'teamname' : team.name,
'member_list' : User.objects.filter(team__name=team.name)
}
return render(request, 'teams/detail.html', context)
我试过模拟 django 教程,但我似乎找不到我的错误。错误陈述如下:
Reverse for 'detail' with arguments '(1,)' and keyword arguments '{}' not found. 0 pattern(s) tried: []
线索在错误消息中,特别是和找不到关键字参数“{}”。。
您的模式有关键字匹配,结果将映射到关键字 team_id
,但是您传递的是 位置参数 of 1
(即为什么你的团队 ID 显示在元组中 (1,)
).
要解决此问题,请将您的 url 标签更改为 {% url 'detail' team_id=team.id %}
。
您可以在 url
tag documentation 阅读更多相关信息。