Django 模板中的 Slugify 问题

Slugify issue in django template

我在 django html 模板中有一个 link。我想将一个 slugified 字符串传递给视图进行处理。我收到一个错误,它没有对字符串进行 slugifying。这是我的代码。我是否遗漏了什么或者我是否需要添加一些东西以便 slugify 在字符串上工作...

<p><a href="{% url 'group_home' group.group.name|slugify %}">{{ group.group.name }}</a></p>

url:

url(r'^(?P<groupname>[\w+]+)/$', views.group_home, name='group_home'),

字符串示例:

first group

这里是错误:

NoReverseMatch at /groups/
Reverse for 'group_home' with arguments '('first-group',)' not found. 1 pattern(s) tried: ['groups/(?P<groupname>[\w+]+)/$']

我的另一个问题是,一旦进入视图,我如何取消对字符串的处理。

您的正则表达式中缺少一个连字符。它将匹配您的 slugified 字符串的连字符:

url(r'^(?P<groupname>[\w+-]+)/$', views.group_home, name='group_home'),

为什么要"unslugify"?也许您正在寻找类似 built-in class-based generic view 的内容。它们允许您根据 url.

中指定的 pk/slug 检索对象