什么是部分观点?

时间:2011-08-16 21:19:08

标签: model-view-controller codeigniter

我一直在使用Codeigniter,以便习惯于模型 - 视图 - 控制器架构,并尝试加快制作和实施网站的过程。

我一直看到对“部分视图”的引用,但找不到该术语的定义。

有谁能告诉我部分视图是什么,以及它在哪里使用?

2 个答案:

答案 0 :(得分: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>

这对于根据列表重复内容很有用。 请注意,视图和部分视图之间没有任何区别,它只是您定义术语的方式。

答案 1 :(得分:2)

描述“局部视图”的最佳方法是将其视为模板,它会显示一大块html,并将模型数据传递给它。

在哪里使用的好例子就是你打算一遍又一遍地显示相同的html,比如菜单或页眉,甚至更好地使用它们来显示使用ajax请求的内容。

基本上你在控制器上调用一个动作,它从jQuery中返回部分视图,然后将返回的标记放入select或div标签中。这是从我的博客easy ajax with aspnet mvc and jquery做到这一点的一个例子,是的我知道asp.net mvc不是php和codeigniter,但是主体是相同的。