加載我想在Django上的所有URL模式表演魔術:信號時,所有的URL在Django
如果他們沒有一個名字,然後我想給他們一個自動的名字。
不幸的是,django似乎懶惰地加載了url模式。
實現這個magic-add-name方法很簡單,不是這個問題的一部分。
問題:在哪裏調用這個方法?我需要在所有的url已經被加載並且在第一個請求被處理之前調用這個方法。
代碼應該適用於Django 1.9和Django 1.10。
背景
Django的棄用這樣使用進口的字符串(Deprecate the ability to reverse by dotted path)
reverse('myapp.views.my_view')
我有一個大的遺留代碼基礎,而且我不喜歡打字和維護冗餘字符。
我希望沒有名稱的所有網址都具有相應導入字符串的名稱。
urls.p中的示例y:
url(r'^.../.../(?P<pk>[^/]+)/$', views.my_view))
我想將此網址的名稱自動設置爲'myapp.views.my_view'。
當你不能在你的代碼中使用這些名字時,命名URL模式有什麼意義? –
@NilsWerner我更新了問題,揭示了我的背景。 – guettli