2011-08-16 132 views
4

我一直在使用Codeigniter來習慣模型 - 視圖 - 控制器體系結構,並嘗試加快製作和實現網站的過程。部分視圖是什麼?

我總是看到對「部分視圖」的引用,但無法找到該術語的定義。

任何人都可以告訴我什麼是局部視圖,以及它在哪裏使用?

回答

5

局部視圖只是您可以包含在父視圖中的子視圖。讓我們來看一個常見的例子:

// Controller: 
$data['myvar'] = array('element1', 'element2', 'element3'); 
$this->load->view('myview', $data); 

// Myview: 
<ul> 
    foreach ($myvar as $var) { 
    $this->load->view('partialview', array('var', $var)); 
    } 
</ul> 

// Partialview: 
<li><?= $var ?></li> 

這對根據列表重複內容很有用。 請注意,視圖和偏好視圖之間沒有區別,只是包含它的方式定義了術語。

+0

這是完美的,不僅是一個很好的答案,而且正是我期待的! – Kin

2

描述「局部視圖」的最好方法是將其視爲模板,它將顯示一個帶有傳遞給它的模型數據的html塊。

在哪裏使用一個好的例子就是你計劃重複顯示相同的html,比如菜單或頁面標題,或者甚至更好地使用它們顯示使用ajax請求的內容。

基本上你會在控制器上調用一個動作,它返回來自可以說jQuery的部分視圖,然後把返回的標記放到select或div標記中。這裏是一個例子,從我的博客easy ajax with aspnet mvc and jquery這樣做,是的,我知道它的asp.net mvc不是PHP和codeigniter,但校長是一樣的。