2009-08-12 5 views
1

こんにちは、私はデコレータに問題があり、最終的に私が探しているようなViewScriptデコレータが見つかりました。私は、すべてのファイルを互いにどのように指し示すのかをかなり理解することができず、皆さんが助けてくれることを望んでいました。私のフォームでZend ViewScript Decorator - 私のビュースクリプトを置く場所

は、一番下に、私はすべての要素にviewScriptデコレータの私の割り当てを持っている:

Bottom of the form.php: 

    $this->setElementDecorators(array(array('ViewScript'), array('viewScript' => 'ViewScript.phtml'))); 

私はこれが私のフォーム要素を取り、ViewScriptにそれらを置くだろうという印象の下にありました。 phtmlは私のform.phpと同じフォルダにあります。

しかし、私はこのエラーメッセージが表示されます:

Warning: Exception caught by form: Plugin by name '/ViewScript.phtml' was not found in the registry; used paths: Zend_Form_Decorator_: Zend/Form/Decorator/;Zend/Form/Decorator/ (..BLAHBLAH) 

はなぜフォームはViewScript.phtmlを見つけることができない、そしてどのように私はそれを指しているだろうか?次の2つのデコレータ、1「ViewScript」と呼ばれる、とあなたがやりたいこととは反対に、「ViewScript.phtml」と呼ばれる他の設定されている

答えて

4

$this->setElementDecorators(array(
    array('ViewScript', array(
    'viewScript'=>'ViewScript.phtml' 
), 
); 

は覚えておいてください、あなたが設定されているデコレータを - そう各デコレータはその配列内の1つの要素だけを関数呼び出しに渡します。

+0

ありがとう、良い先生 – Ethan

関連する問題