如何根据另一个字段填充字段

How would you populate a field based on another field

提问人:Cato Johnston 提问时间:2/9/2009 更新时间:12/11/2013 访问量:3087

问:

在管理面板中,我想根据某个文本字段填充 slug 字段

例如。

名称: My Awesome Page

将自动填充

蛞蝓:my_awesome_page

django django-models django-admin

评论


答:

5赞 rz. 2/9/2009 #1

SlugField 曾经有一个高达 0.96 的prepoulate_from选项。在那之后,它成为了一个管理员选项。有关这方面的参考,请参阅此处

或者,您可以覆盖模型的 save 方法来计算 save() 上 slug 字段的值。

这个问题也可能有帮助。

1赞 Rasmus Kaj 8/10/2011 #2

还有一个名为 django-autoslug 的应用程序,它提供了一个字段类型 AutoSlugField。使用它,您可以:

class Something(models.Model):
    title = models.CharField(max_lenght=200)
    slug = AutoSlugField(populate_from='title')
    ...

这个 AutoSlugField 具有许多不错的功能,例如生成一个 slug,以便它与其他一些字段(可能是 DateTimeField 的类别或年份部分)组合在一起时都是唯一的。

有关详细信息,请参阅 http://pypi.python.org/pypi/django-autoslug

评论

0赞 Rasmus Kaj 1/6/2014
感谢@sfletche纠正了这个错别字!