2012-01-13 4 views
0

ビュー内でviewelementを使用していますが、コントローラで設定されたテンプレート変数をオーバーライドする必要があります。キー値配列を要素に渡しますが、そのキーでは効果がありません。他の変数は、要素の内部で使用する前に定義されていません。それを行うにはトリックがありますか、それに対して別の変数が必要ですか?CakePHP:ビュー要素のテンプレート変数をオーバーライドします。

内部コントローラ

$this->set('mykey', 'myvalue'); 

インサイドテンプレート

echo $this->element('myelement', array('mykey' => 'anothervalue')); 

任意のアイデア?

答えて

1

これまで説明した設定をテストしましたが、コントローラで設定された変数の代わりに2番目の要素パラメータで設定された変数が使用されています。したがって、「myelement」は期待通りに「別の値」をエコーし​​ます。

caching is enabledでも構いませんが、$this->element()コールのパラメータとして指定する必要があります。

+0

ありがとうございます。なぜ、それは突然期待どおりに動作します。私はキャッシュが私を冗談だと思う。とにかく、私は必要な結果を得る。 – Daniel

関連する問題