2016-07-21 9 views
0

Laravelの学習を始めたばかりで、メインレイアウトに2番目のコントローラーを追加したいと思います。複数のコントローラーを1つのページに追加する

ルートは、デフォルトのルートディレクトリです:/

とレイアウトは次のようになります。

<div class="container"> 
    @yield('content') 
</div> 
<div class="basket"> 
    ~basket comes here~ 
</div> 

私は、ユーザーのバスケットを表示したいが、私はそのためのDBクエリを必要とし、私ができます他のコントローラを組み込む方法を見つけ出しました。少なくともルーティングは必要ありません。

私は実際にコードを要求していません(悲しいことに、この質問のためのより良い場所を見つけられませんでした)、おそらく私はちょうど設計のヒントを必要としています。このための関連性のある有益な情報は見つかりません。

そして私はmainレイアウトを使用するすべてのコントローラにバスケットを入れたくありません。

ヘルプの任意の種類は、私は本当に迷ってしまいました、apreciatedされるだろう:)

答えて

1

あなたはview composersを使用する必要があります。基本的には名前$バスケットに変数を追加し、名前your.layout.nameとビューが構成されている場合、言う

view()->composer('your.layout.name', function ($view) { 
    $basket = ...// Your basket query here 

    $view->with('basket', basket); 
}); 

この:あなたはAppServiceProviderブーツの内側(オープン)方法以下を追加します。

+0

私は実際にlaravelドキュメントを読んでいますが、私はこれを見逃してしまったのか分かりません!あなたの答えをありがとう、まさに私が探していたもの。 –

関連する問題