にロードされたときに、私はジャンゴのすべてのURLパターンに魔法を実行したい:彼らは名前を持っていない場合信号すべてのURLがジャンゴ
、その後、私は彼らに自動化された名前を与えたいです。
残念ながら、djangoはURLパターンを読み込みにくいようです。
このmagic-add-name-methodの実装は簡単であり、この質問の一部ではありません。
問題:このメソッドをどこから呼び出すのですか?私はすべてのURLがロードされた後、最初のリクエストが処理される前に、このメソッドを呼び出す必要があります。
コードは、Django 1.9とDjango 1.10で有効です。
背景
Djangoは、私は大規模なレガシーコードベースを持っている、と私は冗長な文字を入力し、維持するようにしませんDeprecate the ability to reverse by dotted path)
reverse('myapp.views.my_view')
(このような輸入の文字列の使用は推奨しません。
名前のないすべてのURLに、対応するインポート文字列の名前を付けることを希望します。
urls.pの例y:
url(r'^.../.../(?P<pk>[^/]+)/$', views.my_view))
このURLの名前を自動的に 'myapp.views.my_view'に設定します。
私は事実の後に作成されたURLを変更するための信号を使用する代わりに、django.conf.urls.url
の交換ラッパーの低下を書きません
コードでこれらの名前を使用できない場合、URLパターンの名前を付けるポイントは何ですか? –
@NilsWerner私は、私の背景を明らかにする質問を更新しました。 – guettli