0
我正在寫一個小博客應用程序,希望它的條目可以通過title-name和id的組合來訪問。django url-tag和裝飾的網址
Expression: ^blog/([\d\w\-_]+)\-(\d+)/$
Example URL: localhost:8000/blog/django-is-awesome-231/
第一部分是通過將博客條目的標題都爲小寫,並與-
代替空格和特殊字符生成。
我想知道如何從一個條目反轉這樣的網址。
{% for entry in entries %}
<li><a href="{% url 'blog.views.display', entry.title entry.id %}">{{ entry.title }}</a></li>
{% endfor %}
但它告訴我沒有發現反向匹配。
感謝,
我只是想這樣說:
def get_mangled_name(self):
""" Returns the mangled name of the entry. """
title = self.title.lower().replace(' ', '-')
title = ''.join(filter(lambda x: x in string.letters, title))
if title.endswith('-'):
title = title[:1]
return '%s-%d' % (title, self.id)
<li><a href="{% url 'blog.views.display' entry.get_mangled_name %}">{{ entry.title }}</a></li>
但它也不能工作。
您可能想看看[get_absolute_url](https://docs.djangoproject.com/en/dev/ref/models/instances/?from=olddocs#get-absolute-url)規範URL的一個對象。這樣你可以按照你想要的方式格式化url,只需從你的模板中調用'href =「{{entry.get_absolute_url}}」''''' –
在你的反向中有一個逗號,刪除並嘗試 – karthikr