2017-06-01 6 views
0

Laravelのドキュメントの指示に従ってappends([])とページ付けしましたが、これらのパラメータの永続性に少し問題があります。Laravelページ区切りを取得して

たとえば、私はhome?category=Cars&make=Teslaを私の視点に渡します。彼らとページを貼る最善の方法は何ですか?リクエストを取得しますか?

は、今私は

$category_name = $category_model->name; 

(カテゴリiはrequest('category');でfindOrFailをつかんできたモデルである。)としてビューにパラメータとしてカテゴリを渡されました。そして私の見解では、それはそうのようなものです:

{{ $vehicles->appends(['category' => $category_name])->links() }} 

ただし、ページ間でページを移動すると、この$ category_name値は維持されないようです。私が欲しいものを達成するために推奨される方法は何ですか?

ありがとうございました。

答えて

1

結果を改ページするときに、コントローラにクエリ文字列を追加できます。あなたの唯一の質問だったのか、それとも条件としてクエリ文字列を適用することさえ気にしていません。ここでは両方を行う方法を示すサンプルがあります。これはあなたにそれを行う方法のアイデアを与えるはずです。この例では列名を仮定しました。

$category = request('category'); 
$make = request('make'); 

$vehicles = Vehicle::when($category, function ($query) use ($category) { 
     return $query->where('category', $category); 
    }) 
    ->when($make, function ($query) use ($make) { 
     return $query->where('make', $make); 
    }) 
    ->paginate(10); 

$vehicles->appends(request()->query()); 

return view('someview', compact('vehicles')); 
+0

これはまさに私が感謝したsandeeshです! :) – iLC

関連する問題