我遇到了一個非常奇怪的錯誤。我在我的settings.py
文件中定義的,像這樣的應用程序ID:模板中的Django settings.py變量
CARDSPRING_APP_ID = '################'
這幾乎在每一頁上的工作在我的網站上,除了一個。奇怪的是,其他變量的工作。在網頁上的腳本中,我有以下幾點:
alert("cs appid=" + {{ CARDSPRING_APP_ID }} +
" sectoken=" + {{ securityToken }} +
" timestamp= " +{{ timestamp }} +
" hash = " + {{ digestedHash }} +
" ccnum " + $('.card-number').val() +
" exp" + $('.expiration-month').val() + $('.expiration-year').val() +
" user = " + {{ csid }});
當頁面呈現,它的計算結果這個
alert("cs appid=" + +
" sectoken=" + DDFJRMZXD12WVWHFFC###### +
" timestamp= " +1346183125 +
" hash = " + a929b3aec9179c700c09d###### +
" ccnum " + $('.card-number').val() +
" exp" + $('.expiration-month').val() + $('.expiration-year').val() +
" user = " + SG1###);
重要的是,{{ CARDSPRING_APP_ID }}
已評估不了了之。有誰知道爲什麼這可能是這種情況?謝謝!
UPDATE
我試圖創建一個context_processors.py
文件,如下面的答案說明,並確保將其添加到適當的位置在settings.py
。我仍然沒有任何運氣 - 它計算在一個頁面上,但不能在其他
更新2
的模板被稱爲用這個命令:
return render_to_response('howto'+str(number)+'.html',locals(),context_instance= RequestContext(request))
UPDATE 3 得到它的工作 - 這添加到我的settings.py需要
TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
"myapp.context_processors.cardspring",
)
你有一個上下文處理器,它給模板中的CARDSPRING_APP_ID值嗎? –
我不確定 - 我將如何檢查?我知道'CARDSPRING_APP_ID'在網站的其他頁面上正確評估,而不是在這個頁面上。 – mythander889
那麼你如何將'CARDSPRING_APP_ID'傳遞給這些頁面呢?無論如何將它添加爲上下文處理器可能會更好,因爲它會自動將其添加到所有頁面。 –