ユニークなスラッグを生成するためのさまざまな方法を見てきました。1、Ex.2、Ex. 3、例。4など
ModelForm の保存時に固有のスラッグを作成したいと考えています。私のモデルが次のような場合:
class Phone(models.Model):
user = models.ForeignKey(User)
slug = models.SlugField(max_length=70, unique=True)
year = models.IntegerField()
model = models.ForeignKey('Model')
series = models.ForeignKey('Series')
オブジェクトが次の値を持っているとしPhone
ます (送信された ModelForm を介して):
Phone.user = dude
Phone.year = 2008
Phone.model = iphone
Phone.series = 4S
このオブジェクトの URL を次のように表示します。
http://www.mysite.com/phones/dude-2008-iphone-4S
slugify
これを実現するには、シグナルを介して使用するか、save メソッドをオーバーライドする必要があることを理解しています。しかし、ユーザーdude
が 2 番目の 2008 iphone 4S オブジェクトを作成した場合、このオブジェクトに固有のスラッグを作成する最善の方法は何でしょうか? 追加オブジェクトの URL を次のようにしたい:
http://www.mysite.com/phones/dude-2008-iphone-4S-2
と
http://www.mysite.com/phones/dude-2008-iphone-4S-3
http://www.mysite.com/phones/dude-2008-iphone-4S-4
#...etc ...
グーグルで調べたところ、django でスラッグを作成するさまざまな方法があるようで、ベスト プラクティスを見つけようとすると混乱しました。
この問題に関するアドバイスと明確化に感謝します!