2012-05-23 43 views
0

我想重寫Pinax項目的默認Account/context_processors.py。覆蓋帳戶/ context_processors.py(Pinax/Django)

但是,每次嘗試時,都找不到該文件並繼續使用默認設置。

在默認的項目中的文件的路徑爲:pinax /應用/帳號/ context_processors.py

我試圖把它context_processors.py的定製版本,在我的項目在以下位置:

  1. MyApp的/應用/帳戶/ context_processors.py
  2. MYAPP /帳戶/ context_processors.py
  3. MYAPP/pinax/context_processors.py

我認爲第一個應該是要走的路。

我在做什麼錯?

回答

1

Django依靠TEMPLATE_CONTEXT_PROCESSORS來定位和導入上下文處理器。這與模板搜索的行爲有點不同。
因此,在設置文件中覆蓋TEMPLATE_CONTEXT_PROCESSORS"pinax.apps.account.context_processors.account"更改爲您的導入路徑。

+0

謝謝okm!所以我實際上也試着改變它,但是一直得到以下錯誤:導入請求處理器模塊apps.account.context_processors時出錯:「沒有名爲account.context_processors的模塊」。我沒有使用正確的導入路徑嗎? – user1328021

+0

@ user1328021保持其與'INSTALLED_APPS'中的應用程序一致。另外,使用'apps.account.context_processors.your_function_name'而不是'apps.account.context_processors' – okm

+0

好吧!完善。所以在'INSTALLED_APPS'中它仍然指向'pinax.apps.accounts'。我把它改成了'accounts',因爲在修改它的時候我把整個目錄保存到我的本地項目中,並且它現在可以正常工作。 – user1328021