初めに
条件検索した時にページングで次のページに行くと、
検索結果が破棄されていたエラーの解決方法です。
状況
ユーザーを一覧表示して名前や部署で検索する画面
ページング実装部分のhtml
<div>
{{$users->links()}}
</div>
検索した時のURL
search?name=&department=2
検索状態でページ遷移した時のURL
search?page=2
期待していたURL
search?name=&department=2&page=2
問題は{{$users->links()}}
で自動的に作られたページネイションに、
name
やdepartment
のパラメーターが含まれていないこと。
解決方法
ページング実装部分のhtml
<div>
{{$users->appends([
'name' => $name,
'department' => $department,
])->links()}}
</div>
HTMLでページリンクを自動生成しているところに、送りたいパラメーターを指定してあげることで
想定していた挙動になりました。