イタリックテキスト### 前提・実現したいこと
ここに質問の内容を詳しく書いてください。
PHP(Laravel)で店舗管理システムを作っています。
一覧の検索機能を実装中に躓いた部分があるので質問です。
発生している問題・エラーメッセージ
検索時、セレクトボックスの値を維持したいです。検索は行えるのですが、結果が出るとき毎回セレクトボックス内が空になっています。
if文の中に、今選ばれている値と、何かが一致した際はselectedにしたいです。
UserController側
public function index(Request $request) { $role = $request->input('role'); $query =user::query(); if (!empty($role)) { $query->where('role', '=', $role); } $user = $query->get(); $options_user = config('const.User_role'); return view('user.index', ['users' => $user],['options_user' => $options_user]); }
一覧側 user.index.blade
<form action="{{route('user.index')}}" method="GET"> <select id="role" name="role"> <option value=""></option> @foreach ($options_user as $option_user => $name) <option value="{{ $option_user }}" @if($なにかと一致? == $option_user) selected @endif>{{ $name }}</option> @endforeach </select> <button type="submit" class="btn-primary">検索</button> </form>
route側
Route::resource('user', 'UserContoroller',['only' => ['index', 'show', 'create', 'store', 'edit', 'update', 'destroy']]);
試したこと
検索時、セレクトボックスの値を維持したいです。検索は行えるのですが、結果が出るとき毎回空になっています。
if文の中に、今選ばれている値と、何かが一致した際はselectedにしたいのですが、$roleや、$requestと書いても、undefinedとなります。また、return viewの部分で、role,requestを渡すようにしましたが、それでもエラーが出ます。
何かと一致?と書いてある部分、どうしたらいいかがわかりません。
$option_userはconfigから設定値をとってきています。
補足情報(FW/ツールのバージョンなど)
Laravel 6
PHP 7.4 です。
あなたの回答
tips
プレビュー