2016-07-06 4 views
0

{{render_part( "user_profile");}のようなビューヘルパーを使いたいです。 }} laravelレイアウトでは、render_profileが返され、html、 これはプレーンな文字列として表示され、HTMLとしてレンダリングされませんまた、私はコアをオーバーライドするカスタムクラスを書くことができるようにlaravelブレード/ビューのコンパイルアーキテクチャを理解するための良いガイドが必要ですメソッド。laravel view出力を変数としてレイアウトにエコー/埋め込む方法

+3

なぜ、ブレード '@include( 'view')'を使用していないのですか? –

+0

はい、正確ですが、私はコントローラから動的に決定されたサブビューを含める必要がありますので、コントローラーからブレードレイアウトに@include( 'viewname'、$ data)を動的にエコーしたいと考えています – harish

答えて

3

私はGerard Rechesの回答をupvotedしました。しかし、コントローラからビューをレンダリングし、ビューにHTMLを表示したい場合:

デフォルトでは、Blade {{ }}ステートメントは、XSS攻撃を防ぐためにPHPのhtmlentities関数によって自動的に送信されます。

{!! $myHTML !!} 

・ホープ、このことができます:あなたはあなたのデータをエスケープしたくない場合は、次の構文を使用することができます。

+0

本当にありがとうございます。 $ myHTML !!} 'をコントローラからの変数として使用できますか? – harish

+2

もちろん、あなたのコントローラ内にビューをレンダリングし(必要に応じて変数を渡す)必要があります。このような何かが動作するはずです: '$ html = view( 'your.view'、['foo' => 'bar']) - > render();'。 * $ html *をレスポンスに追加して出力します。 Laravelのビュー(https://laravel.com/docs/master/views)でドキュメントをチェックアウトしてください。それはかなりよく書かれています。 – JasonK

関連する問題