スタック オーバーフローを長い間読んでいます。初めて、ここで sth に質問する必要があります。
アプリはバイリンガルです。urlpatterns で URL を定義し、ugettext_lazy で翻訳します。ユーザーが最初の言語を選択すると、URL が機能します。lang を 2 番目の言語に変更すると、うまく機能します。
しかし、ユーザーが第 1 言語を選択して第 2 言語で URL を入力すると、urlpatterns が第 1 言語に変換されるため、一致するものがないため、404 が返されます。
Django に 2 番目の言語に翻訳された urlpatterns を再度チェックさせるにはどうすればよいですか? 最初の言語にurlが入力されているかのように、ページが存在する場合は表示したい。
LocaleMiddleware を使用しています。
Cookie とリダイレクトを設定することを考えましたが、見つからない場合、ユーザーの URL には、ユーザーが入力したものではなく、2 番目の言語に変換された URL が表示され、誤解を招く可能性があります。
何か案は?
よろしく、マイク
編集:これらの i18n パターンは使用しません。私は次のようなものを持っています:
url(_(r'^contact/'), include('contact.urls')),
選択した言語に関係なく、Django に適切なビューを表示させたいと考えています。ユーザーが /contact/ と入力するか、第 2 言語の /kontakt/ に翻訳すると、ビューが表示されます。