Django的行爲與我所期望的一樣,但給我一個警告。看來我的用例沒有考慮到。這使我困惑,所以我的問題:我想念任何等待我的問題,或開發人員錯過這個用例。django urlconf的奇怪警告
我希望url person/<slug>/
指向一個詳細信息視圖,而url persons/
指向列表視圖。在詳細視圖中,它比起persons/
來說更加人性化。我用包括使代碼更簡潔,是這樣的:
url(r'^person', include([
url(r'^s/$', views.foo),
url(r'^/(?P<slug>[\w-]+)/form/$', views.form),
url(r'^/(?P<slug>[\w-]+)/$', views.bar),
])),
現在Django的告訴我,在開頭的斜線是unneccesary - 這是不對的,留下它給我留下了逆轉的URL person<slug>
在沒有斜槓之間。我不明白爲什麼這應該是不好的風格。該警告是:
WARNINGS:
?: (urls.W002) Your URL pattern '^/(?P<slug>[\w-]+)/form/$'
[name='person_form'] has a regex beginning with a '/'. Remove this
slash as it is unnecessary. If this pattern is targeted in an
include(), ensure the include() pattern has a trailing '/'.
感謝您的反饋@Alasdair。 只是爲了正確性,它應該是'= False',對吧? 是的,django票務跟蹤器可能是正確的地方,但對我來說這是不尋常的......我的意思是報告一個錯誤,我不確定它是否是一個。 是否有可能使特定警告消失?然後,我建議在警告中添加關於此的評論。 – Ilja
您可以使用['SILENCED_SYSTEM_CHECKS'](https://docs.djangoproject.com/en/1.11/ref/settings/#silenced-system-checks)設置來消除檢查。在你的情況下,我認爲改變URL模式而不是沉默檢查會更好。 – Alasdair
我不認爲沉默斜槓檢查是一個很好的解決方案 - 除非有可能在該行中沉默這個_this specific_警告 - 似乎並非如此。作爲開發人員爲此提供功能請求可能不值得。我不會成功寫一篇我害怕的:)那麼,我會結束這個問題,再次感謝你。 – Ilja