laravelでDBの取得結果をviewに出す

はじめに

viewへのデータの受け渡しについて、router,Controller,viewに分けて整理する。

データベースの中身

router

<?php

Route::get('/', 'PostsController@index');

Controller

<?php

namespace App\Http\Controllers;

use App\Post;

class PostsController extends Controller
{
    //
    public function index()
    {
        $posts = Post::all();

        // 意図的に空にする
        //$posts = [];

        // 両方同じ意味
       // return view('posts.index', ['posts'=> $posts]);
       return view('posts.index')->with('senddata', $posts);

    }
}

a

 view

<!DOCUMENT html>

    <html lang="ja">
        <head>
            <meta charset="utf-8">
            <title>this is title</title>
        </head>

        <body>
            <div class='container'>
                <h1> this is it!</h1>
                <ul>
                    @forelse ($senddata as $data)
                    <li>{{ $data->title }}</li>
                    @empty
                    empty!
                    @endforelse
                </ul>

            </dev>
        </body>

    </html>

結果

laravel の実践向け書籍