【发布时间】:2014-02-18 02:55:26
【问题描述】:
我正在尝试创建对 SEO 友好的网址,其中所有空格都替换为连字符。
这就是我在 Django 模板中使用 slugify 对 URL 进行“slugifying”的方式
<a href="{% url 'dj' dj_name=dj.name|slugify %}">
这是我的 urls.py
url(r'^top100/(?P<dj_name>[a-zA-Z0-9 \'&-]+)/$', views.dj, name='dj')
这是我的看法
def dj(request, dj_name):
dj = DJ.objects.get(name=dj_name)
dj_song_list = Song.objects.filter(artist=dj, duplicate=False).order_by('-votes', '-release_date')
return render(request, 'hunt/dj.html', {'dj_song_list': dj_song_list, 'dj':dj}
现在网址中的%20 已更改为-,但我收到错误DJ matching query does not exist.
这也会忽略 DJ 名称中的 &。例如,它将 DJ 的网址 Above & Beyond 更改为 www.example.com/top100/above-beyond
【问题讨论】: