我明白,我們可以使用模板兩個不同的擴展模板之間切換「延伸變量」。 例如Django的擴展不同的基本模板
views:
if something:
base = 'base1.html'
else:
base = 'base2.html'
return render_to_response ('template.html', {'base':base})
template.html:
{% extends base %}
通常情況下,工作正常。但是,我的問題是,我使用的是django註冊,我不必編寫自己的視圖來處理註冊和登錄過程。這也意味着我無法將變量傳遞給模板。雖然我的項目目錄下有註冊模板。 (喜歡的login.html)
不幸的是,Django的不能在模板中做到這一點:
{% if something %}
{% extends 'base1.html' %}
{% else %}
{% extends 'base2.html' %}
{% endif %}
我知道了「可變基數」可以向下傳遞到身份驗證登錄的唯一方法是寫我自己的意見,如登錄,註銷等。這似乎不適合DRY模型,並且相當容易出錯。
有沒有辦法,我能做到這一點的另一種方式?或者解決問題的任何指針?
謝謝。
-P
Tomasz,你是正確的,這是更多的編碼問題。發佈這個問題後,我挖了一點。我需要切換基本模板的原因是我有兩個不同版本的網站 - 完整版和移動版。由於超過1/2的網站將永遠不會移動到移動網站,因此我開始使用中間件來切換視圖。要真正解決我的問題,我相信我將不得不添加方法來重新路由我的移動GET請求。我只是因爲懶惰才希望避免這種情況。感謝帖子!感謝您的時間。 – pdxMobile 2011-02-26 18:34:21