
Học Laravel 10 cơ bản – Bài 5: Database & Eloquent ORM trong Laravel 10
Trong bài này, chúng ta sẽ tìm hiểu Database Eloquent ORM Laravel 10 để quản lý cơ sở dữ liệu, tạo Model và thao tác CRUD. Đây là phần quan trọng giúp bạn làm việc với dữ liệu trong ứng dụng Laravel.
1. Cấu hình Database
Trong file .env
, sửa thông tin kết nối:
👉 Chạy lệnh test kết nối:
Nếu OK → Laravel tạo sẵn các bảng users
, password_resets
, failed_jobs
…
2. Migration (Tạo bảng)
Migration giúp quản lý schema DB bằng code.
Tạo migration:
File: database/migrations/xxxx_create_posts_table.php
Chạy migration:
👉 DB có bảng posts
.
3. Seeder & Factory (Tạo dữ liệu mẫu)
Tạo seeder:
php artisan make:seeder PostSeeder
File database/seeders/PostSeeder.php
:
Chạy seeder:
php artisan db:seed --class=PostSeeder
4. Model (ORM – Eloquent)
Tạo Model:
php artisan make:model Post
File: app/Models/Post.php
5. CRUD với Eloquent
Tạo dữ liệu:
Lấy dữ liệu:
$all = Post::all(); // Lấy tất cả $find = Post::find(1); // Tìm theo ID $where = Post::where('title', 'like', '%Laravel%')->get();
Cập nhật:
$post = Post::find(1); $post->title = "Tiêu đề mới"; $post->save();
Xóa:
6. Quan hệ (Relationship)
One-to-One
Ví dụ: 1 User có 1 Profile.
User.php
Profile.php
Dùng:
One-to-Many
Ví dụ: 1 User có nhiều Post.
User.php
Post.php
Dùng:
Many-to-Many
Ví dụ: Post có nhiều Tag, Tag thuộc nhiều Post.
Post.php
Tag.php
👉 Laravel mặc định dùng bảng trung gian post_tag
.
7. Query Builder vs Eloquent
-
Query Builder: viết query SQL ngắn gọn.
-
Eloquent: dùng model.
✅ Kết luận
Trong bài này bạn đã học:
-
Cấu hình database.
-
Migration để quản lý schema.
-
Seeder & Factory để tạo dữ liệu mẫu.
-
Model & CRUD với Eloquent ORM.
-
Các quan hệ trong Eloquent: One-to-One, One-to-Many, Many-to-Many.