【发布时间】:2018-07-29 18:14:21
【问题描述】:
我正在学习 python django 我正在开发一个网站,但我正在努力解决 URL 模式 我正在分享我的 URL 模式代码我不明白我哪里出错了 url.py
urlpatterns = [
url(r'^$',views.IndexView.as_view(),name='index'),
# /music/id/
url(r'^picture/(?P<pk>[0-9]+)$',views.DetailView.as_view(),name='detail'),
#for PictureDetail view
url(r'^detail/(?P<pk>[0-9]+)/(?P<alb_title>[\w%20+A-Za-z]+)/(?P<song_title>[\w%20+A-Za-z]+)$', views.PicturedetailView.as_view(), name='picturedetail'),
]
我的 Detail.html:-
<ul>
{% for picture in album.picture_set.all %}
<div class="col-sm-4 col-lg-2">
<div class="thumbnail">
<a href="{% url 'music:picturedetail' pk=picture.pk alb_title=picture.album.album_title song_title=picture.song_title %}">
<img src="{{ picture.file_type.url }}" class="img-responsive">
</a>
<div class="caption">
<h6>{{picture.song_title}}</h6>
</div>
</div>
</div>
{% endfor %}
</ul>
{% endblock %}
我正在传递三个参数,一个带有 id,另外两个是字符串,我还更新了我的 html href 模式,但出现以下错误:-
Reverse for 'picturedetail' with keyword arguments '{'pk': 3, 'alb_title': 'Beautiful River', 'song_title': 'River'}' not found. 1 pattern(s) tried: ['music/detail/(?P<pk>[0-9]+)/(?P<alb_title>[\\w%20+A-Za-z]+)/(?P<song_title>[\\w%20+A-Za-z]+)$']
提前谢谢你
【问题讨论】:
标签: python django python-3.x