我是 Zend 框架的新手,想了解如何最好地循环数据库数据以生成链接列表。我的理解是模型应该包含大部分应用程序逻辑,控制器和视图尽可能轻。
我正在查询数据库以获取一组记录,我想遍历它们并生成 HTML 链接。下面的伪代码。
控制器:
$this->view->myList = MODEL->generateHtml();
模型:
function generateHtml() {
query db
loop through record set
build a string of html within loop including links
return string to controller
}
看法:
echo $this->myList;
这似乎将逻辑放入模型中,并将控制器灯和视图仅用于渲染。
我遇到的一个问题是我想$this->view->url
在输出的 html 中生成路由链接,但不能在模型中这样做。我在网上所做的阅读表明您不应该在模型中构建 html。我可以在模型中生成所需数据的数组并将其返回,然后在控制器或视图中循环以生成 html,但不确定什么是正确的方法,并希望得到一些建议。
感谢您提供的任何帮助。
新问题 - 更新代码:
再次嗨....下面有厌倦的建议,但现在有不同的问题。
我的代码现在是:
模型:
不用于此测试。将返回类似于在控制器中创建的数组的数组。
控制器:
$aStoryList = array(
array(
'headline' => 'Headline 1',
'story' => 'Story 1'
),
array(
'headline' => 'Headline 2',
'story' => 'Story 2'
)
);
$this->view->aStoryList = $aStoryList;
看法:
echo $this->partialLoop('partials/storyList.phtml', $this->aStoryList);
故事列表.phtml:
echo "<br />" . $this->headline . $this->story;
我已经把部分放在了....
视图/部分/storyList.phtml
视图中使用的此位置和路径源自此 stackoverflow 问题的答案 -我在 Zend Framework 中的何处保存部分(视图),以便我的应用程序中的所有视图都可以访问?
当我运行它时,我收到以下错误
消息:在路径 (/home/sites/xxxxx.com/public_html/xxxxxxx/application/views/scripts/) 中找不到脚本“partials/storyList.phtml”
现在把我的头发拉出来!