NTM Solutions

Thứ Năm, 30 tháng 7, 2026

🚀 Laravel 12 (2026) — Bài 21 — Laravel Breeze

Errors log:

Sau khi cài Breeze file route bị ghi đè (mất dữ liệu)

-> sửa lại thêm middleware (để Breeze xác thực mới cho vào link)

Ví dụ:

use App\Http\Controllers\PostController;
use App\Http\Controllers\CategoryController;

Route::middleware('auth')->group(function () {

    Route::resource('posts', PostController::class);

    Route::resource('categories', CategoryController::class);

});

và giữ lại:

require __DIR__.'/auth.php';

ở cuối file.


Đến thời điểm này, chúng ta đã có thể xây dựng một Blog CMS với các chức năng như:

  • Quản lý Post

  • Category

  • Tag

  • Relationship

  • Form

  • Validation

  • Upload File

Tuy nhiên, ứng dụng vẫn còn thiếu một thành phần rất quan trọng:

Hệ thống đăng nhập và quản lý người dùng.

Laravel cung cấp một giải pháp chính thức để xây dựng Authentication hiện đại mang tên Laravel Breeze.


Laravel Breeze là gì?

Laravel Breeze là bộ khung Authentication chính thức do đội ngũ Laravel phát triển.

Chỉ với vài lệnh cài đặt, Breeze sẽ tạo sẵn:

  • Đăng nhập (Login)

  • Đăng ký (Register)

  • Quên mật khẩu

  • Đặt lại mật khẩu

  • Xác minh Email (tùy chọn)

  • Giao diện đăng nhập

  • Middleware xác thực

  • Controller

  • Route

  • View

Người lập trình không cần tự xây dựng từ đầu.


Vì sao nên dùng Breeze?

Nếu tự viết Authentication, bạn sẽ phải xử lý:

  • Mã hóa mật khẩu.

  • Kiểm tra đăng nhập.

  • Lưu Session.

  • Đăng xuất.

  • CSRF.

  • Remember Me.

  • Bảo mật mật khẩu.

Laravel Breeze đã xử lý sẵn toàn bộ các công việc này theo chuẩn của Laravel.


Yêu cầu

Trước khi cài Breeze, dự án cần:

  • Laravel đã được cài đặt.

  • Database đã cấu hình.

  • Chạy Migration thành công.

Ví dụ:

php artisan migrate

Cài đặt Breeze

Cài package:

composer require laravel/breeze --dev

Sau khi hoàn tất:

php artisan breeze:install

Laravel sẽ hỏi một số tùy chọn.

Ví dụ:

Which starter kit?

● Blade
○ React
○ Vue
○ API

Trong khóa học này chúng ta chọn:

Blade

để tập trung vào Laravel trước khi học các công nghệ Front-end nâng cao.


Cài giao diện

Sau khi Breeze tạo mã nguồn:

npm install

Tiếp theo:

npm run build

Trong quá trình phát triển, có thể dùng:

npm run dev

để tự động biên dịch tài nguyên khi có thay đổi.


Migration

Breeze sử dụng bảng users có sẵn.

Chạy:

php artisan migrate

Nếu dự án của bạn đã chạy Migration từ các bài trước thì Laravel sẽ chỉ tạo những bảng còn thiếu.


Khởi động dự án

php artisan serve

Mở trình duyệt:

http://127.0.0.1:8000

Trang chủ sẽ xuất hiện thêm:

  • Login

  • Register

ở góc trên bên phải.


Đăng ký tài khoản

Nhấn:

Register

Điền:

  • Name

  • Email

  • Password

  • Confirm Password

Sau khi gửi Form, Laravel sẽ:

  • Validation.

  • Mã hóa mật khẩu.

  • Lưu User vào Database.

  • Đăng nhập tự động.


Mật khẩu được mã hóa

Trong Database:

password

$2y$12$...

Laravel sử dụng thuật toán băm để lưu mật khẩu, không lưu mật khẩu gốc.

Điều này giúp tăng tính an toàn nếu cơ sở dữ liệu bị lộ.


Đăng nhập

Sau khi có tài khoản:

Login

Nhập:

  • Email

  • Password

Nếu đúng:

Laravel tạo Session và xác định người dùng đã đăng nhập.


auth()

Thay vì:

'user_id' => 1

Từ bây giờ:

'user_id' => auth()->id()

Hoặc:

auth()->user()->id

Đây là cách làm chuẩn trong các ứng dụng Laravel.


Ví dụ tạo Post

Post::create([

    'title' =>

        $request->title,

    'content' =>

        $request->content,

    'image' =>

        $image ?? null,

    'category_id' =>

        $request->category_id,

    'user_id' =>

        auth()->id(),

]);

Mỗi bài viết sẽ tự động gắn với người đang đăng nhập.


Hiển thị tên người dùng

Blade:

{{ auth()->user()->name }}

Email:

{{ auth()->user()->email }}

Điều này rất hữu ích cho Dashboard hoặc thanh điều hướng.


Đăng xuất

Breeze đã tạo sẵn chức năng:

Logout

Sau khi đăng xuất:

  • Session bị xóa.

  • Người dùng phải đăng nhập lại để tiếp tục.


Những gì Breeze tạo

Sau khi cài đặt, dự án sẽ có thêm:

app/
    Http/
        Controllers/
            Auth/

resources/
    views/
        auth/

routes/
    auth.php

Ngoài ra còn có:

  • Middleware.

  • Validation.

  • Email Verification (nếu bật).

  • Các Route xác thực.


Ưu điểm của Breeze

  • Chính thức từ Laravel.

  • Dễ cài đặt.

  • Dễ tùy biến.

  • Mã nguồn rõ ràng.

  • Phù hợp cho các dự án nhỏ và vừa.

  • Là nền tảng để học Laravel Authentication.


Tổng kết

Trong bài này chúng ta đã học:

  • Laravel Breeze là gì.

  • Cài đặt Breeze.

  • Blade Starter Kit.

  • Build giao diện.

  • Đăng ký tài khoản.

  • Đăng nhập.

  • auth()->id().

  • auth()->user().

  • Đăng xuất.

Từ bài này trở đi, mọi thao tác tạo Post, cập nhật Profile hay quản lý dữ liệu đều sẽ gắn với người dùng đang đăng nhập, thay vì sử dụng giá trị user_id cố định như ở các bài trước.


Bài tập

  1. Cài đặt Laravel Breeze.

  2. Tạo một tài khoản mới.

  3. Đăng nhập vào hệ thống.

  4. Thay user_id = 1 bằng auth()->id().

  5. Hiển thị tên người dùng trên giao diện.

  6. Tạo một Post và kiểm tra user_id trong cơ sở dữ liệu.

  7. Đăng xuất khỏi hệ thống.


Bài tiếp theo

Bài 22, chúng ta sẽ tìm hiểu chi tiết cách Login hoạt động trong Laravel, bao gồm Session, Guard, Middleware và quy trình xác thực người dùng sau khi đăng nhập.

x1

quay về MỤC LỤC

Không có nhận xét nào:

Đăng nhận xét

Facebook Youtube RSS