我有一些頁面,例如我想要顯示的用戶協議,有或沒有佈局(extends
標記),具體取決於它的調用方式。我正在使用jQuery Fancybox
將這些頁面加載到iframe中。如果JS被禁用,鏈接應該在一個新的窗口中打開,這個窗口是完整的佈局,否則,如果它們在iframe中,他們不需要佈局。如何獲得一個無版面的頁面版本?
截至目前,我使用jQuery來去掉頁眉/頁腳(只有在內容部分替換正文)
if(window.location != window.parent.location) {
$('body').html($('#content'));
}
做什麼,但它看起來不正確加載的東西,可以永遠不會被顯示(或者更糟的是,直到JS開始時纔會顯示半秒)。我想我可以做的是創建一個只包含內容的部分模板,然後創建兩個容器頁面,一個是頁眉/頁腳,另一個是沒有的頁面;他們都包括部分。然後使用JS來修改鏈接......這將不得不指向不同的視圖,這又會調用不同的模板......看起來好像很多工作。有更好的方法嗎?
@ZeissS:
像這樣的東西是不可能在Django:
{% if not iframe %}
{% extends "layouts/default.html" %}
{% endif %}
的{% extends %}
標籤必須在模板中的第一個標籤,因此不能有條件地發表了評論。我想也許我可以在佈局中做到這一點...然後它會適用於我的所有網頁....讓我們試試這個。
(我不知道django)保留一個視圖,但是移動頁眉/頁腳到外面並在包含文件中做一個'if',在那裏檢查一個查詢參數。你不需要創建多個視圖/寺廟。 – ZeissS 2010-08-19 21:30:56