にメッセージのレイアウトをいくつか入れたいのですがMessageComponent
。そのsend
メソッドは、ビュー(レイアウト)で使用される変数の配列を取得し、それらを使用してメッセージをレンダリングしてから送信する必要があります。
質問は:
コンポーネント内の変数の配列を使用してビュー(レイアウト)をレンダリングするにはどうすればよいですか?印刷する代わりにレンダリングされたコンテンツを取得します(コンポーネントでも)
ありがとう。
にメッセージのレイアウトをいくつか入れたいのですがMessageComponent
。そのsend
メソッドは、ビュー(レイアウト)で使用される変数の配列を取得し、それらを使用してメッセージをレンダリングしてから送信する必要があります。
質問は:
コンポーネント内の変数の配列を使用してビュー(レイアウト)をレンダリングするにはどうすればよいですか?印刷する代わりにレンダリングされたコンテンツを取得します(コンポーネントでも)
ありがとう。
(編集:質問を読み間違えた)
レンダリングされたビューのHTMLを取得する場合は、次のようにします。
$view = new View($this, false);
$view->set(compact('foo', 'bar')); // set variables
$view->viewPath = 'elements'; // render an element
$html = $view->render('message'); // get the rendered markup
これは、コンポーネントだけでなくコントローラーでも機能するはずです。