1

我想給我的表單視圖腳本裝飾,像這樣:設置模塊

public function setupViewScript() { 
    //Work out the path based on the class name here 
    //**** 

    //Set decorator 
    $form_decorator->setViewScript($form_view_path); 
    $this->setDecorators(array(array('ViewScript', array('viewScript' => $form_decorator->getViewScript())))); 
} 

不過,我不想使用缺省的模塊;我想根據表單的類名加載一個特定的視圖腳本。由於我可以在多個模塊中使用特定的表單,因此我希望我的所有表單視圖腳本都位於./application/form/views/scripts/中。

但是,我無法將模塊設置爲「窗體」,而不是當前模塊。任何人都可以提供見解嗎?

感謝

回答

3

我看着到Zend的代碼,發現U可以設置viewscript的模塊,如下面的例子:

$this->setDecorators(array(
     array('ViewScript', array('viewScript' => '<viewscriptname>', 'viewModule' => '<modulename>')), 
     'Form' 
    )); 

這應該工作,我也在我的項目中使用它。

0

你有沒有試過這種解決方案?

$request = Zend_Controller_Front::getInstance()->getRequest(); 
$request->setModuleName('form'); 

我沒有檢查,但認爲它應該工作