
コンニチハ
パンに塗り塗りジャム太郎です!
今回のテーマは「LaravelのEloquent入門」についてです。
想定読者:
- Laravel学習中の初心者
- PHP+DBの基礎を学びたい人
- ORMってなに?という人
はじめに:Eloquentって何?
- ORMのざっくり説明
- SQLを書かずにPHPだけでDB操作ができる
- Laravelで超重要な機能 ⇒ 実案件でも使う
開発準備
- Laravelプロジェクト作成済みを前提
.env
でDB接続設定
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=sample_db
DB_USERNAME=root
DB_PASSWORD=
①マイグレーションでテーブル作成
- Artisanコマンドの紹介
php artisan make:migration create_posts_table
- マイグレーションファイルの例
public function up(): void
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('body');
$table->timestamps();
});
}
- 実行
php artisan migrate
②モデル作成
- Artisanコマンド
php artisan make:model Post
- モデルの役割説明
- 必要ならfillableプロパティの紹介
class Post extends Model
{
protected $fillable = ['title', 'body'];
}
③データ操作(CRUD)
●作成(Create)
Post::create([
'title' => '初めての投稿',
'body' => 'Laravel最高!',
]);
●取得(Read)
$posts = Post::all();
●更新(Update)
$post = Post::find(1);
$post->update(['title' => 'タイトル更新']);
●削除(Delete)
Post::destroy(1);
④tinkerを使ってみよう(超便利!)
- 起動
php artisan tinker
- 実際の操作例
Post::create(['title' => 'Tinker投稿', 'body' => 'Tinkerで作成']);
Post::all();
おわりに
- EloquentをマスターするとLaravelがもっと楽しくなる
- 次のステップ ⇒ リレーションやスコープの使い方も学ぼう
では、また次の記事で〜