2012-11-11 41 views
0

我對CakePHP相當陌生,所以請原諒我,如果這是一個有點荒謬的問題。我已經發現,如果我想在多個頁面上使用控制器,我需要使用Elements。所以我創建了一個打印出各種信息的元素。我的問題是 - 什麼,以及如何修改元素,以便在一個頁面上,我可以打印出我的控制器的值和另一頁上的值,例如我可以將這些值放入下拉列表中。CakePHP - 以不同的方式顯示視圖/元素

謝謝!

+2

控制器中的功能對應於VIEW而不是ELEMENT。 ELEMENT是一種可重複使用的標記,可以嵌入到多個視圖中。 –

回答

1

約定如下:控制器包含所有與數據模型交互的操作。例如,用戶控制器將通過提供「登錄」,「註銷」和「編輯配置文件」操作與用戶模型進行交互。每個動作只是控制器中的公共方法。這些動作設置了HTML呈現時使用的數據片段。

視圖是模板語言和html的相應部分,用於呈現從控制器爲每個操作傳遞的數據。

佈局是一種讓觀衆不會重複自己太多的方式。如果您的網頁與大多數網站具有相似的結構,那麼使用佈局來呈現視圖,這有助於減少代碼。

元素只是被重用的視圖的一部分。例如,如果所有視圖都在頂部有一個標題,爲了方便起見,您可以將該標題代碼放入一個元素中,只需調用佈局頂部的元素,並將其放在每個視圖中。這還消除了代碼中的重複,因爲如果您需要更改該標題,則只需修改elements文件夾中的header.ctp,而不必修改每個視圖或每個佈局。

相關問題