質問

ヘルパーでテンプレート変数を設定することは可能ですか?

最終的に私がやろうとしているのは、JavaScriptで使用するために、ヘルパーをレイアウトのヘッダーにコードを追加することです。

使用しない方がいいと思う方法:

  • ビューオブジェクトを渡す:余分な関数を呼び出す必要を心配しないでください
  • 「グローバル」を使用するキーワードを使用してビューを取得しますが、これはオーソドックスとは見なされないため、最後の手段として以外は使用しないでください

何か考えはありますか

2012-02-20の更新: 最近更新されたケーキとして、Cake 1.2とCake 2への回答を含めようとしました。Adamに感謝し、推奨事項に印を付けてください

役に立ちましたか?

解決

クラスレジストリを使用して取得できることがわかったため、ヘルパーでこの関数を作成しました。

/**
 * Access to the view for special operatoins
 */
protected function getView() {
    return ClassRegistry::getObject('view');
}

2013-02-20の更新: 上記をCake 1.2について書いたのですが、Adam(下のコメント)はCake 2.3で $ this-> _View-> viewVars ['var'] を使うことを提案しました。テストする方法があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top