Django - 过滤具有空格值的字段的对象不起作用?

时间:2014-04-15 19:11:15

标签: python django slug

我试图让django中的网址显示所有字段等于某个值的项目。我的模型上的字段是一个字段,如下所示:

class Episode(models.Model):
    series = models.CharField(max_length=200, blank=True)

我没有使用slugfields或类似的东西(我不知道它们的意义是什么?),当系列字段的值中有空格时,我似乎无法进行过滤。我的观点如下:

def series(request, slug):
    print slug
    tag = slug.replace("-", " ")
    print tag 
    print Episode.objects.filter(series=tag)

    return render(request, "taggedpage.html", {   
        "episodes": Episode.objects.filter(series=tag),
        "tag": tag

        })

我的网址格式:

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

例如,如果系列字段等于&#34;女高音&#34;,则尝试访问网址

http://mytvsite.com/series/the-sopranos/

不返回任何对象。但是,如果该字段只有一个单词,则它可以正常工作,例如,如果该系列是&#34; house&#34;,则访问

http://mytvsite.com/series/house/

将返回所有具有系列的对象:house的字段值。 这是一些正则表达式/ slug的事吗?

1 个答案:

答案 0 :(得分:0)

我不知道究竟是什么导致了这个问题,但我安装了django-autoslug,现在一切正常。