私は現在、Djangoのおもちゃプロジェクトに取り組んでいます。私のアプリのDjango slugified urls - どのように衝突を処理するのですか?
一部は、ユーザーがレビューを残すことができます。私はレビューのタイトルを取得し、URLを作成するためにそれをslugifyしたいと思います。 www.example.com/reviews/the-best-thing-ever
:ユーザーが「!史上最高のもの」と呼ばれるレビューを書き込むと
ので、URLは次のようになります。
すべてが順調と良いですが、2人のユーザーが同じタイトルを選ぶケースを処理するための最良の方法は何ですか?私はタイトルがユニークであることを要求することを望んでいません。
私はどこかURLでレビューIDを追加することについて考えてきましたが、私は衝突しない任意のURLのは、余分な情報を避けるためにしたいと思います。
アイデア?当然の
、スラグが使用されているかどうかを確認し、それに何かを追加私は考えていましたが、この場合、スラグは無意味な目のキャンディーであることが判明しました。それは速いですが、この問題からあなたを完全に解放します。 "本当の"アプリではおそらくこのルートをとるだろうが、私はまだこれをどう扱うのかに関心があり、衝突しないURLにはすべてのIDが全くないことを認めている。 –
私はまた、あなたがURLバーを見ているなら、これはSOが使用するのと同じアプローチであるように思えます:) –
それはいい会社のようです。すべてのIDを削除する限り、他の2つの回答は間違いなく進んでいます。私が最初にスラッグを開始したとき、私はどこかで見つけたユニークなスラグの方法を使用しました(Zalewが投稿したものとほぼ同じです)。 – Adam