0

次のコードを使用して、ビューの1つでアクションヘルパーを呼び出します

echo $this->action('foo', 'bar');

barControllerのfooActionはその処理を実行し、ページのリストを出力します。ただし、リストの出力には再びレイアウトが含まれているため、非常に苛立たしいものになります。fooActionでレイアウトを無効にすると、ライブ側でもレイアウトが完全に無効になります。

私は困惑しています。ビューヘルパーを作成するだけで、これを回避する方法はたくさんありますが、不思議なことに、誰かがこれに対する解決策を持っているかどうか疑問に思いました。

4

1 に答える 1

1

Action ViewHelperのZF リファレンス ガイドから

アクション ビュー ヘルパーの API は、コントローラー アクションを呼び出すほとんどの MVC コンポーネントの API に従いますaction($action, $controller, $module = null, array $params = array())$action必須$controller です。モジュールが指定されていない場合、デフォルトのモジュールが想定されます。

アクションがレイアウトを無効にするかどうかを制御するパラメーターを受け入れるようにコントローラーを変更します。アクション ヘルパーを使用する場合は、この制御フラグを渡します。

補足: Action ViewHelper を使用すると、ディスパッチ プロセス全体が再び実行され、アプリの速度が低下するため、不適切な方法と見なされます。可能であれば、モデルに直接アクセスしてみてください

于 2010-02-03T13:14:06.270 に答える