'Làm chủ Laravel Routing nâng cao và Route Group', 'slug' => 'lam-chu-laravel-routing-nang-cao', 'category' => 'Routing', 'summary' => 'Tìm hiểu cách khai báo tham số động, biểu thức chính quy Regex, Named Routes và gom nhóm prefix admin.', 'content' => 'Laravel cung cấp hệ thống định tuyến (Routing) vô cùng linh hoạt và mạnh mẽ. Bạn có thể bắt tham số bắt buộc như /articles/page/{page}, tham số tùy chọn kèm ràng buộc Regex where(\'slug\', \'[a-z0-9-]+\'), đặt tên định danh bằng ->name() và gom nhóm các route quản trị với Route::prefix(\'admin\').', 'author' => 'Hoàng Vũ', 'views' => 320, 'published_at' => '2026-01-10 08:30:00', ], [ 'title' => 'Xây dựng RESTful Resource Controller chuẩn mực trong Laravel', 'slug' => 'xay-dung-restful-resource-controller-laravel', 'category' => 'Controller', 'summary' => 'Khám phá 7 phương thức chuẩn của Resource Controller: index, create, store, show, edit, update và destroy.', 'content' => 'Chỉ với một dòng lệnh Route::resource(\'articles\', ArticleController::class), Laravel tự động ánh xạ 7 chuẩn RESTful HTTP Verbs (GET, POST, PUT/PATCH, DELETE) tương ứng với 7 action trong ArticleController, giúp mã nguồn rõ ràng và tuân thủ chuẩn công nghiệp.', 'author' => 'Minh Tuấn', 'views' => 285, 'published_at' => '2026-01-12 09:15:00', ], [ 'title' => 'Tổ chức giao diện kế thừa với Blade Layout, Partials và Stack', 'slug' => 'to-chuc-giao-dien-voi-blade-layout-stack', 'category' => 'Blade View', 'summary' => 'Sử dụng @extends, @section, @yield, @include và @stack/@push để xây dựng kiến trúc giao diện mô-đun hóa.', 'content' => 'Blade Template Engine cho phép tách biệt khung giao diện chính (layouts/app.blade.php) và các thành phần con (partials/nav, partials/footer). Đặc biệt, cơ chế @stack(\'styles\') và @stack(\'scripts\') giúp các trang con đẩy CSS/JS riêng biệt vào đúng vị trí mong muốn.', 'author' => 'Thu Hà', 'views' => 410, 'published_at' => '2026-01-15 14:20:00', ], [ 'title' => 'Tái sử dụng UI hiệu quả bằng Anonymous & Class-based Blade Components', 'slug' => 'tai-su-dung-ui-bang-blade-components', 'category' => 'Components', 'summary' => 'Tạo các thẻ giao diện tùy chỉnh , , gọn nhẹ, dễ bảo trì.', 'content' => 'Thay vì lặp lại hàng chục dòng HTML Bootstrap cho mỗi ô nhập liệu hay thông báo, Blade Component (, , ) giúp đóng gói giao diện, truyền dữ liệu qua thuộc tính (props) và tự động hiển thị trạng thái lỗi validation.', 'author' => 'Hoàng Vũ', 'views' => 195, 'published_at' => '2026-01-18 10:45:00', ], [ 'title' => 'Bảo mật Form với CSRF, Method Spoofing và Route Model Binding', 'slug' => 'bao-mat-form-csrf-method-spoofing-model-binding', 'category' => 'Security & Eloquent', 'summary' => 'Kết hợp @csrf, @method(\'PUT\'/\'DELETE\'), Validation và Implicit Route Model Binding trong thực tế.', 'content' => 'Trong Laravel, mọi biểu mẫu POST/PUT/DELETE đều được bảo vệ khỏi tấn công giả mạo truy vấn qua @csrf. Bên cạnh đó, Implicit Route Model Binding tự động truy vấn bản ghi Article theo ID hoặc Slug và trả về lỗi 404 nếu không tìm thấy.', 'author' => 'Hải Đăng', 'views' => 540, 'published_at' => '2026-01-20 16:00:00', ], ]; foreach ($samples as $item) { Article::updateOrCreate(['slug' => $item['slug']], $item); } } }