【发布时间】:2011-08-11 17:38:01
【问题描述】:
我是 PHP 框架的新手,很抱歉这个愚蠢的问题。我喜欢 MVC 架构,但请你帮我回答一下如何设计包含多个数据块的页面?
您知道,我有一个相当复杂的页面,您可以在其中找到图表、增益框和其他相关内容。我知道我将创建一个控制器和更多数据模型,但是视图呢?
是习惯于每个控制器做一个视图还是最好有这么多我需要的视图?例如页面上的每个块都会有单独的视图?
请帮助我更多地了解MVC,非常感谢您提前回复!
干杯,
雅库布
【问题讨论】:
我是 PHP 框架的新手,很抱歉这个愚蠢的问题。我喜欢 MVC 架构,但请你帮我回答一下如何设计包含多个数据块的页面?
您知道,我有一个相当复杂的页面,您可以在其中找到图表、增益框和其他相关内容。我知道我将创建一个控制器和更多数据模型,但是视图呢?
是习惯于每个控制器做一个视图还是最好有这么多我需要的视图?例如页面上的每个块都会有单独的视图?
请帮助我更多地了解MVC,非常感谢您提前回复!
干杯,
雅库布
【问题讨论】:
根据我理解 MVC 框架的经验,我建议选择一个包含大量文档和操作指南的框架,例如 codeigniter 或 cakephp,然后在您编写代码时,该框架可能会作为您编写页面/网络应用程序。
【讨论】:
我不能代表所有的 php 框架,但 CakePHP 和 Lithium 提供了“元素”,它们是可以包含在视图和布局中的 sn-ps 代码。您可以将一些视图数据传递给他们。下面是如何在 Lithium 视图中使用元素的示例:
<?php
echo $this->_render('element', 'chart', array(
'title' => 'My Chart',
'data' => array(1, 2, 3, 4, 5),
));
?>
然后,在views/elements/chart.html.php中,就可以使用数据了:
<h3><?=$title;?></h3>
<?php foreach($data as $number) : ?>
<?=$number?><br />
<?php endforeach; ?>
【讨论】: