LaravelのModelとは?

LaravelのModelは、データベースのデータを処理する役割があります。

LaravelではMVC(Model、View、Controller)という構成が使われており、その中でModelはデータベースとつながり、データの取得・登録・編集・削除などを行います。

例えば、ブログシステムの場合はBlog Modelを作成して、blogsテーブルのデータを処理できます。

LaravelではEloquent ORMを使って、Modelとデータベースをつなぐことができます。

Modelを作る

Laravelでは、Artisanコマンドを使ってModelを作ることができます。

php artisan make:model Blog

コマンドを実行すると、Blog.phpファイルが作成されます。

app/Models/Blog.php

サンプルコード

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Blog extends Model
{
protected $table = 'blogs';

protected $fillable = [
'title',
'contents'
];
}

コード説明

$tableには、Modelで使用するデータベースのテーブルを設定します。

protected $table = 'blogs';

この場合、Blog Modelとblogsテーブルをつなぎます。

$fillableには、登録や編集ができる項目を設定します。

protected $fillable = [    'title',    'contents'];

この場合、titlecontentsのデータを登録・編集できます。

データを取得する

Modelを使って、データベースのデータを取得できます。

$blogs = Blog::all();

Blog::all()は、blogsテーブルのすべてのデータを取得します。

特定のデータを1件取得することもできます。

$blog = Blog::find(1);

この場合、IDが1のブログデータを取得します。

まとめ

LaravelのModelは、データベースとつながり、データを処理する役割があります。

簡単にすると、

Controller → Model → Database

という流れになります。

LaravelのEloquent ORMを使うことで、SQLを直接書かなくても、Modelを使ってデータベースのデータを処理できます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

技術情報

前の記事

LaravelのControllerとは?
技術情報

次の記事

Laravel Bladeとは?