管理パネルから、特定のテキストフィールドに基づいてスラッグフィールドにデータを入力したい
例えば。
タイトル:私の素晴らしいページ
自動的にデータを入力します
スラッグ:my_awesome_page
管理パネルから、特定のテキストフィールドに基づいてスラッグフィールドにデータを入力したい
例えば。
タイトル:私の素晴らしいページ
自動的にデータを入力します
スラッグ:my_awesome_page
0.96までのSlugFieldにはprepoulate_fromオプションがありました。その後、管理オプションになりました。その参照については、ここを参照してください。
または、モデルのsaveメソッドをオーバーライドして、save()のスラッグフィールドの値を計算することもできます。
この質問も役立つかもしれません。
フィールド タイプ AutoSlugField を提供する django-autoslug というアプリもあります。それを使用すると、次のようになります。
class Something(models.Model):
title = models.CharField(max_lenght=200)
slug = AutoSlugField(populate_from='title')
...
この AutoSlugField には、スラッグを生成してグローバルに一意にするか、他のフィールド (DateTimeField のカテゴリまたは年の部分など) と組み合わせて一意にするなど、多くの優れた機能があります。
詳細については、 http://pypi.python.org/pypi/django-autoslugを参照してください。