2012-10-13 53 views
1

我對resolve documentation末尾的代碼示例感到困惑(「測試視圖是否會在重定向到之前引發Http404錯誤」)。有人可以提供有關此代碼的解釋 - 它正在做什麼以及它如何工作?我不知道發生了什麼事。Django文檔:resolve()代碼示例

例如,你爲什麼會需要調用視圖來測試它拋出一個404,當resolve本身可以拋出Resolver404?當代碼調用視圖函數時,它會通過關鍵字參數爲其提供請求,但在此之前還有其他參數。但是不應該認爲第一個參數是request?爲什麼使用referer頭文件?

感謝

回答

1

Resolver404如果路徑不能解決的URL /視圖功能僅拋出。

視圖函數本身仍然可以提高404取決於輸入參數,如壞ID。

即使世界2個問題:

  • 成功解決一個正則表達式匹配URL '^/(?P<foo>\d+)\d/$'
  • 確保與參數foo視圖功能,但不產生404

你說得對例如,request應該是第一個參數。如果有任何url *args(未命名的regexp匹配),請求將被添加兩次,因爲它通常是第一個參數。這個例子中的錯誤可能是?

+0

你能否評論爲什麼使用referer頭文件? –