libro
www.tuyano.com
初心者のためのLaravel入門

ORM(Eloquent)の利用 (4/5)

作成:2016-02-14 11:31
更新:2016-02-14 11:31

■whereで検索する

続いて、簡単な検索を行ってみましょう。決まったフィールドから指定の値を持つレコードを検索する、ということを行ってみます。

下に、簡単なgetIndexメソッドのコードを挙げておきます。コントローラーをこのように書き換え、アクセスするアドレスに「id」のクエリーパラメータを付けてアクセスしてみてください。例えば、こんな感じです。
http://localhost:8000/helo?id=1

これで、IDが「1」のレコードが検索され表示されます。idの値をいろいろと変更して表示を確かめてみましょう。

ここでは、まず$request->idでクエリーパラメータのidの値を変数に取り出しています。そしてMyTableクラスの「where」と「get」を使って、idを指定した検索を行っています。これは以下のように呼び出します。
モデル::where( 項目 , 値 )->get();

where――フィルター処理を行うもの。第1引数でしていたフィールドから、第2引数の値のものだけを絞り込む。
get――whereで絞りこまれたレコードを取り出す。

whereは、引数で条件を指定し、そのレコードだけを取り出すよう絞り込むためのものです。これ自体は、何も値は取り出しません。その後にあるgetが、絞りこまれたれコードを取り出すものになります。検索は、基本的にこの2つを組み合わせて行います。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

public function getIndex(Request $request)
{
    $id = $request->id;
    $data = MyTable::where('id', $id)->get();
    return view('helo', ['message' => 'MyTable List','data' => $data]);
}

※関連コンテンツ

「初心者のためのLaravel入門」に戻る