基本的には、コントローラーによって生成されたちょっとしたHTMLのチャンクを1つのメインビューに実装することです。問題は、ちょっとしたhtmlのカスタムスタイルが必要で、どこに(手動で)インクルードする必要があるのかわからないので、何とか関数を呼び出すファイルにcssを追加したいメソッドが呼び出されているときのコントローラ。 詳細な説明: 私のモデル(この場合はウィンドウ)の各インスタンスのいくつかのプロパティを表示するために、小さなカスタムパネルをプログラマチックに表示しています。私がリストしているメインビューにはたくさんのものがありますので、別のビューファイルを作成してパネルを作成し、それをコントローラ内の関数を介して返すことにしました。コントローラーメソッドを呼び出すビューのヘッダーにCSSファイルを含める
@foreach($order -> windows as $window)
{!!$window->drawPanel()!!}
@endforeach
はその後、私のウィンドウコントローラで、私は、ウィンドウが表示されているビュー返すメソッド持っていることのように(!違ったの性質上depedingを!):次のように だからhome.blade.php
に私が行います。
public function drawPanel()
{
return view('dogrami.windowPanelThumbnail', ['window' => $this]);
}
次に、windowPanelThumbnail
ファイルには、必要なhtmlが表示されています。問題は、私のパネルをビルドするために、ビルダービューには含めることができないcustom cssを使用します。これは100回も呼び出されるためです。 質問は、コントローラのメソッドを呼び出したファイルにスタイルを追加する方法です。 基本的に私は次のようにやってみたい:
public function drawPanel()
{
//$cssFile = pathToMyCssFile;//that's the instance containing my custom css
//$callingFile = ...//somehow retrieve an instance to the file that called that method.. in this case - the path to 'home.blade.php'
//if($calling.File already has the $cssFile included in it's header)
//don't do anything
//else
//$callingFile -> somehow include the $cssFile instance in the header
return view('dogrami.windowPanelThumbnail', ['window' => $this]);
}
それは私が求めているものですので、それが可能だ場合、私は見当がつかない。それを達成するための良いアイデアがあれば、本当に感謝しています。
レイアウトファイルはありますか? –
@AlexvanVlietレイアウトで私の唯一のアプリケーションファイルに固執しています、それはオプションです!ありがとう!しかし、私の質問は、私が尋ねたことを達成する方法についてですが、あなたはその思い出に私の問題を解決しました。私は、将来の使用のためにそれを必要とするかもしれないと私は説明されたようにできるようにしたいと思います。また、ヘッダーにプログラムでCSSファイルを含めるにはどうしたらいいですか?単にファイルに直接書き込むために 'File'ファサードを使うべきですか?私は小切手も必要だから。 –
ビューを含めるか、それを返すか? –