【问题标题】:How would you populate a field based on another field您将如何根据另一个字段填充一个字段
【发布时间】:2010-10-06 08:04:31
【问题描述】:

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

例如。

标题:我的真棒页面

会自动填充

蛞蝓:my_awesome_page

【问题讨论】:

    标签: django django-models django-admin


    【解决方案1】:

    还有一个名为 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

    【讨论】:

    • 感谢@sfletche 修正了这个错字!
    【解决方案2】:

    曾经有一个用于 SlugField 的 prepoulate_from 选项,最高可达 0.96。之后它成为了一个管理员选项。 See here 供参考。

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

    This question 也可能有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-05
      相关资源
      最近更新 更多