PHPプログラムに関する各種メモ書き

Laravelのコントローラーからビューへの値の渡し方

● with

複数データを渡すときは連想配列で渡します

$data = [
 "data1" => $data1 ,  
 "data2" => $data2 ,  
];
return view('mytemplate')->with($data);

またはwithメソッドを2回呼んでもOKです。

return view('mytemplate')->with('data1',$data1)->with('data2',$data2);

● compact

すっきりと書きたい場合は compact を使って以下のように書くことができます

return view('mytemplate',compact('data1', 'data2'));

● ページネーションにパラメーターを渡す

コントローラーから次のように渡します。

$pagination_params = [
    "aaa" => 1 ,
    "bbb" => 2 ,
];
return view('mytemplate', compact('pagination_params'));

ビューでは次のようにして呼び出します
mytemplate.blade.php

{{ $model->appends($pagination_params)->links() }}

次のようなリンクがページネーションにつきます
( 3ページ目へのリンクにつく文字列 )

?&aaa=1&bbb=2&page=3

● ビューからコントローラーへのリンクを表示する

<a href="{{ route('tweets.index') }}">Tweets</a>

またはこのようにも書けます

<a href="{{ url("/tweets") }}">Tweets</a>
No.1279
07/20 12:16

edit