close

什麼是組合html

有寫個過網頁的人應該知道一件事情

我的網站通常會有目錄及內文兩大部分

要是我有五個page

我們的希望是點選目錄後,只有內文改變了其他不動

傳統上我們要做到這樣的效果,大家應該都知道,非框架莫屬了

點左邊 右邊動

但是框架不僅設定麻煩,也不好用

另一派的人就使用表格的方式

把整個網頁用表格設定好

並複製5個分頁

每個分頁換掉內文的部份,其他不動

 

也就是說….每一個分頁保留了目錄及其他一樣的設定

每一個分頁都寫一份一樣的東西

讓他雖然超連結過去,但是""看起來""只有內文有動

 

這時候問題就來了

要是我目錄改了一個字,你就要很辛苦的打開五個page一個一個改

 

這時候django就有一個很方便的方法叫做繼承

來組合我們的html

 

方法如下

我們在index.html中把內文的部份用block包起來

id="content">

   {% block content %}

        index的內文

   {% endblock %}

 

那在我的分頁上寫

{% extends 'ShowWeb/index.html' %}

{% block content %}

   這個分頁的專屬內文

{% endblock %}

 

這個分頁就會繼承index.html的所有格式

包括title,menu等等所有的設定

並且取代掉block content的部份

 

所以你每個分頁都只需要寫需要取代掉的部份就可以了

很簡單吧

 





例如你每個分頁的title都不一樣,也想要切換

那就在index.html中把title包起來

</span><span style="color:black;" lang="EN-US">{% block title %}</span><span style="font-family:新細明體;color:black;">這是首頁</span><span style="color:black;" lang="EN-US">title{% endblock %}</span><span style="color:navy;" lang="EN-US">

 

分頁上再加上

{% block title %}這是分頁title{% endblock %}

就可以了

 

 

反正你想要變動的部份就用block包起來

程式就會自動判斷

如果你沒寫就用index預設的

有寫的話他就會取代掉原本的

 

相當方便吧

arrow
arrow
    全站熱搜