参考図書
whereによる検索
IDを指定しての検索はfindでできた。ID以外の検索はwhereメソッドを使う。
複数のレコードを得る
$変数 = モデルクラス::where(フィールド名,値)->get();
最初のレコードだけを得る
$変数 = モデルクラス::where(フィールド名,値)->first();
DBクラスのビルダとは少し違い、Eloquentのwhereはビルダクラスのインスタンスを返す。
DBクラスではIlluminate\Database\Query名前空間にあるBuilderクラスのインスタンスが返された。
モデルクラスのwhereではIlluminate\Database\Eloquent名前空間にあるBuilderクラスのインスタンスが返される。
まあほとんど同じとのこと。
実例
nameを検索する
app/Http/Controllers/PersonController.php
public function search(Request $request){
$item = Person::where('name', $request->input)->first;
$param = ['input' => $request->input, 'item' => $item];
return view('person.find', $param);
}
名前をフィールドから検索すると表示されるスクリプト