データの表示方法

データの表示方法

Laravelでデータをブラウザ上に表示するためには、表示専用のビューとデータをデータベースから取得するロジックが必要です。まずは表示に必要なビューを作成しましょう。resoureces/viewの中に、show-items.blade.phpを作成します。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Items一覧</title>
</head>
<body>
    <table>
        <tr>
            <th>ID</th>
            <th>Name</th>
        </tr>
        @foreach ($items as $item)
            <tr>
                <td>{{ $item->id }}</td>
                <td>{{ $item->name }}</td>
            </tr>
        @endforeach
    </table>
</body>
</html>

@foreachでitemsという配列からひとつづつ要素をitemに代入し、itemsから要素がなくなるまでこの処理を続けます。波括弧二つづつに囲まれた中では、itemの要素であるidとnameの内容を安全に出力します。「{{ }}」は、波括弧内の内容をエスケープして表示します。これは、表示する内容にHTMLタグやJavaScriptが含まれていた場合、意図せぬ動作を引き起こす場合があり、それを防ぐ処理となっています。

次に、コントローラーに処理を記述します。このメソッドには、データベースから要素をすべて取得する処理と、そのデータをビューに引き渡す処理を記述します。以下のように処理を追加します。

    public function showItems() {
        $items = Item::all();
        return view("show-items", compact("items"));
    }

Item::allメソッドはitemsテーブルからすべての要素を取得するものです。これによりitemsテーブルのすべての要素がitems変数に代入されます。compact関数でitems変数をビューに引き渡すように処理しています。

次はルーティングを指定します。web.phpに以下の処理を追加します。

Route::get("/show-items", [HelloController::class, "showItems"]);

蒸気を追加後、http://localhost/show-itemsにアクセスすると、データベースに登録されているデータが出力されます。

以上で、データベースから値を取得することができました。次回は、データの更新について行いたいと思います。

コメントを残す

CAPTCHA