社长大人,关于django的模型中的slug字段的运用理解?

社长大人,我做类似博客网站,看网上的教程几乎都在文章模型中添加slug字段,看官网是说跟url的映射有关,但是还是没用看明白,社长大人能不能通俗的解释一下这个slug到底是个什么作用?为什么要用它?

贴一下网上参考代码:

from django.template.defaultfilters import slugify

class Category(models.Model):
        name = models.CharField(max_length=128, unique=True)
        views = models.IntegerField(default=0)
        likes = models.IntegerField(default=0)
        slug = models.SlugField(unique=True)

        def save(self, *args, **kwargs):
                self.slug = slugify(self.name)
                super(Category, self).save(*args, **kwargs)

        def __unicode__(self):
                return self.name
涨见识0 涨水分0

** 文章讲述的内容可能你不赞同,不喜欢,但如果觉得观点新颖,内容独到,提高了你的知识面,帮你了解了你不懂的知识和知道了突发的新闻,这样的贴,希望能点涨见识,相反,到处转载,内容无聊,雷同,毫无建树,请点涨水分!

我要评论

提交评论
每个人都有自己的看法,登录以后马上发表。还没有账号?点击这里马上注册一个账号。

当前有2条评论

  • 江湖中人 :2017一月07号 15:43:38
    slug 这个字段我没用过。这个其实就是用在文章的URL的。比如你现在一篇文章的标题是“i like django”,你可以把slug设置成"i-like-django",然后显示在浏览器的地址URL就是比如这样www.example.com/article/i-like-django/
    因为每个文章都是唯一的,这个slug也一定要唯一,所以你在里面设置的参数是unique=True。
    繁花嗅每篇文章的URL地址都是后面跟他的文章唯一id,你看你的这篇帖子的URL是http://www.fanhuaxiu.com/article/852/
    因为你这篇文章的ID是852
    这样我在处理文章的一些其他的操作就很简单,直接根据这个ID就能在数据库里面找到这个文章。
    反正slug就是这么个功能,对网站的SEO有好处吧。看你自己需求,要不要用,怎么用,看你了。
    0 0 回复 举报

需要登录以后才能进行刚才的操作

  • 刚才的操作,需要登录以后才能继续,如果已经有账号,请点击登录,登录以后,会自动返回到当前页面进行刚才的操作。如果还没有账号,请点击注册。