問題タブ [slugify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - IntegrityError を回避するためにスラッグが既に存在する場合は行の保存をスキップする - Django
API を呼び出してデータを Postgresql データベースに保存する関数を Django ビューに設定しています。
を取得するまではすべて正常に機能していたので、行が既に存在するIntegrityError slugkey already exists
場合は行をスキップまたは無視する方法を見つけようとしています。slugify slug
ここに私のDjangoモデルがあります:
そして、これはビューでの私の機能です:
どうすればこれを修正できますか?
助けてください。
python - Django AutoSlugField が、Django Safe Delete によって論理的に削除されたインスタンスを考慮していない
私たちmodel
にはname
とslug
フィールドがあります。これは次のようになります。
フィールドについては、保存slug
されるたびに一意のスラッグを生成します。model
また、Django Safe Delete
ライブラリを使用してソフト削除しますmodel
:
つまり、たとえば、model
「My Model」という名前で新しいインスタンスを作成するslug
と、「/my-model」のような が自動生成されます。
slug
ここで、 「/my-model」を使用してこのインスタンスを「ソフト削除」するとします。私たちのデータベースには、が削除されdeleted
た日付を含むプロパティがあります。model
これはアプリケーションには表示されません。完全に無視されます (論理的に削除されているため、問題ありません)。
問題は、次に同じ名前の "My Model" で別のものを作成するときに、同じ名前のスラッグ (論理的に削除された) が既に存在することを考慮せずに、"/my-model" スラッグを再び自動生成することです。ナメクジ。「/my-model-1」などの一意のものが必要です。
autoslug
とsafe-delete
ライブラリの間の接続が失われています。どういうわけか、autoslug
ソフト削除されたものがある可能性があることを知り、一意のものを生成するときにそれらを考慮する必要がありますslug.
私たちは Django / Python の初心者であることを考慮してください。
これが機能しない場合、回避策としてslug
2 つのフィールド (名前と ID) を使用して生成します。slug
"/my-model/12345" のようなが生成され、id
は一意であるため、常に一意になります。
python - 'allow_unicode=True' でも韓国語のスラッグが Django で動作しない
で slugify を使用して自動スラッグを作成しようとしていますdjango.utils.text
。以下は私のコードです:
さまざまな言語を使用できるようにするために allowed_unicode=True を使用しましたが、フォームのタイトルに韓国語を入力すると、次のエラーが表示されます。
最初の下線は投稿しようとしている記事のタイトルで、2 番目の下線はスラッグをチェックする Django バックエンドですが、韓国語の文字を認識していないことがわかります...を入れることを含め、同様のStackOverflowですallow_unicode=True
が、機能していません。ここで何が間違っている必要がありますか?
*編集: これはurls.py
コードです: