2010年9月24日 星期五

VIEW的用法

VIEW的概念:

通常我們真正在瀏覽器上看到的版型,是由每個controllerlayoutaction對應的版型組合出來的。
 Layout:你可以打開album.thtml(/home/photo/app/views/layouts/album.thtml)你會發現layout只是一個外框,它並沒有處理任何有關資料呈現的方式,說明一下,
裏面的程式碼:
 echo $title_for_layout?> à 這個會對應到controllerpageTitle這個變數,你可以在controller中,修改它。
  echo $content_for_layout ?> à 這個是對應到每個action使用的view,也就是你資料呈現的地方。
  echo $this->renderElement('header');?> à 這個是有關於elemenet的機制,先簡單來說,通常一個網站所有版面中,會有許多相同的地方(: headerfooter),這時候我們就可以分離出來,讓網站的版型來共同即可。
 Action的版型:CakePHP的目錄擺法:app/views/controller/action.thtml (ex:/home/photo/app/views/ab/view.thtml),舉例來說,我們的Ab這個controller中的view這個aciton,它對應到的版型就應該是在/home/photo/app/views/ab/view.thtml。而view.thtml裏面的變數,都是來自當初在contoller中,$this->set()來的。
 Element:如同剛剛說的,通常一個網站的網頁,會有許多相同的部分,我們可以把它們分離出來,日後維護比較方便。你可以把這些分離出來的版型放在app/views/elements底下。要使用的時候,使用$this->renderElement()就可以了。

沒有留言:

張貼留言