我在应用程序中创建了邮件服务,该邮件服务在发送给收件人之前已将电子邮件正文存储在数据库中。在启用布局的情况下手动呈现Zend_View
每个邮件正文都是一个局部视图脚本,它具有通过Zend_View注入到其中的必要参数。
我想要做的是创建一个'邮件'布局,可以环绕每个部分, 但我似乎只能得到布局内容或视图内容;不一次。
我已经得到了
$scriptPath = 'test_mail';
$view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
$view->setScriptPath(APPLICATION_PATH . '/modules/mail/views/scripts/partials/');
$view->layout()->setLayout('mail');
var_dump($view->layout()->render($scriptPath));
然而,所有我得到的是视图脚本。
我的布局看起来像这样:
我知道这是可能的。我不想这样做:
$layout->content = $view->render($scriptPath);
我假设我对这件事做错了。是否我需要/没有注册布局控制器插件,并以某种方式需要触发它来获得输出?
我想我可以创建一个自定义布局类,并自己照顾渲染,但想看看别人先说什么。
任何提示?谢谢!
我想你可以只是$视图获得通过=新的Zend_View();这里?基于你给我的上下文我的意思是(所以我可能会错过一些东西)。感谢您的回答! – James 2013-05-09 17:02:26
为什么不呢? :)'$ mail_template'包含模板中的所有html,所以你可以用它来操作。我不确定,但你可以尝试'$ view-> partial('template.phtml',$ your_data_array);'在循环中添加一些参数。 – GeorgeMore 2013-05-15 15:46:03