Hướng dẫn dùng resource data trong PHP
Giới thiệuTrong laravel, việc sử dụng các route post, get, group để gọi đến 1 action của Controller đã là quá quen đối với các bạn sử dụng framework này. Trong 1 dự án, làm việc với các action đọc, thêm, xóa, sửa có lẽ là không thể tránh khỏi. Như vậy với mỗi action này, ta sẽ phải viết 1 dòng route::method(). Như thế sẽ dẫn đến việc file route của các bạn sẽ dài và khó đọc. Laravel cung cấp cho chúng ta 1 công cụ vô cùng hữu ích để tối ưu hóa code cho việc này, đó chính là Resource controllers. Show Để có thể thấy rõ hơn lợi ích khi sử dụng resource controllers, mình sẽ đưa ra 1 ví dụ như sau: Bạn muốn tạo 1 controller để xử lý tất cả các request cho "Photos" được lưu trữ bởi ứng dụng của bạn. Bạn sử dụng lệnh dưới đây sẽ tạo cho bạn 1 controller như vậy.
Sau khi chạy lệnh trên, đây là file controller được sinh ra
Khai báoTiếp theo bạn khai báo route cho controller
Chỉ với 1 dòng khai báo như này, là bạn đã khai báo cho tất cả các action trong PhotoController. Bạn cũng có thể khai báo cho nhiều resource controller cùng 1 lúc bằng cách truyền vào 1 mảng cho phương thức resouce:
Các action được xử lý bởi resource controller:
Cách giả methodVí trong html không có các method PUT, PATCH, DELETE nên bạn sẽ cần dùng lệnh
Partial Resource RoutesKhi khai báo resource route như ban đầu mình hướng dẫn, hệ thống sẽ mặc định sẽ xử lý toàn bộ các action trong đó. Tuy nhiên, nếu bạn chỉ muốn dùng 1 số action nhất định trong đó, bạn có thể khai báo như sau:
hoặc
Hàm Ghi đè name routesMặc định tất cả các route trong resource controller sẽ có tên như trong bảng bên trên. Tuy nhiên bạn có thể ghi đè tên route bằng cách sau đây:
Kết luậnVâỵ là mình đã giới thiệu xong cho các bạn về Resource controller trong laravel. Nếu có thắc mắc hay ý kiến gì các bạn có thể comment bên dưới để mình hoàn thiện bài viết hơn. Mình xin cảm ơn! |