データベースに comments テーブルを生成したので,続いてモデルとコントローラを生成します.ここと,ここで行ったようにモデルとコントローラをそれぞれ生成しても良いのですが,モデルの作成時に -c
オプションを付けるとコントローラも同時に生成できます.
vagrant@ubuntu2204 laravelAuth $ php artisan make:model Comment -c ⏎
INFO Model [app/Models/Comment.php] created successfully.
INFO Controller [app/Http/Controllers/CommentController.php] created successfully.
vagrant@ubuntu2204 laravelAuth $
上のように,モデル,コントローラともに先頭大文字の単数形で生成されました.モデルは単数形限定ですが,コントローラは複数形で CommentsController でも構いません.モデルと同時に生成すると単数形になることに注意してください.コントローラはこのように単数形でも複数形でも構わないのですが,プロジェクト内ではどちらかに統一すると良いでしょう.
生成されたモデルは次のとおりです.現時点は編集の必要はありません.
app/Models/Comment.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Comment extends Model
{
use HasFactory;
}
コントローラには index 関数を準備し,コメントの一覧を取得してダンプするコードだけを作成しておきます.
app/Http/Controllers/CommentController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Comment;
class CommentController extends Controller
{
public function index()
{
$comments = Comment::get();
dd($comments);
}
}