Blade cung cấp cho chúng ra rất nhiều khả năng với form mà HTML hay PHP thuần không có. Chẳng hạn, nổi bật nhất là việc hỗ trợ các methods PUT, DELETE, và PATCH với @method directive. Cụ thể:
1 2 3 4 5 |
<form action="/foo/bar" method="POST"> @method('PUT') ... </form> |
Blade cung cấp sẵn cho chúng ta một công cụ để chống cross-site request forgery với chất lượng khá tốt. Do đó, bạn chỉ cần dùng ngay @csrf directive mà không phải tốn thêm công sức “dựng tay”. Lưu ý, tất cả các Laravel form cần có @csrf. Nếu không, bạn sẽ được redirect về trang 419 | Page expired.
1 2 3 4 5 |
<form method="POST" action="/profile"> @csrf ... </form> |
Ngoài ra, một điểm hay nữa là @error hỗ trợ bạn dễ dàng đưa ra thông báo lỗi khi validate một form. Ví dụ:
1 2 3 4 5 6 |
<label for="title">Post Title</label> <input id="title" type="text" class="@error('title') is-invalid @enderror"> @error('title') <div class="alert alert-danger">{{ $message }}</div> @enderror |
Và như vậy, tôi tạm kết thúc phần giới thiệu về Blade ở đây. Tất nhiên, chúng ta còn nhiều thứ khác về Blade, mà quan trọng nhất là Components và Slots. Tuy nhiên, để kịp tiến độ “mì ăn liền”, giúp các bạn có thể dựng nhanh một ứng dụng Laravel cơ bản để có thể sử dụng ngay, bài tiếp theo mà chúng ta sẽ tìm hiểu là route params và controllers. Còn về Components và Slots, tôi sẽ đưa ra hướng dẫ chi tiết trong những bài viết riêng về chúng.