我在應用程序中創建了郵件服務,該郵件服務在發送給收件人之前已將電子郵件正文存儲在數據庫中。在啓用佈局的情況下手動呈現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