Ở bài trước chúng ta đã tìm hiểu một số khái niệm cơ bản về route, ở bài này mình sẽ giới thiệu tiếp với mọi người các tính năng khác liên quan đến route
Các route group cho phép chia sẽ các thuộc tính chung, các filter, các namespace của url, …
Middleware Route
Route::middleware(['first', 'second'])->group(function () {
Route::get('/', function () {
//
});
Route::get('/user/profile', function () {
//
});
});
Subdomain Route
Khi bạn muốn sử dụng route cho subdomain. tuy nhiên bạn cần thiết lập subdomain trên webserver trước
Route::domain('{account}.example.com')->group(function () {
Route::get('user/{id}', function ($account, $id) {
//
});
});
Route prefix
Khi bạn muốn nhóm các route có tiền tố giống nhau
Route::prefix('admin')->group(function () {
Route::get('/users', function () {
// Matches The "/admin/users" URL
});
});
Laravel tự động resolve eloquent model được định nghĩa route hoặc function trong controller có tên biến khớp với tên bộ phần route.
use App\Models\User;
Route::get('/users/{user}', function (User $user) {
return $user->email;
});
Ví dụ với controller
use App\Http\Controllers\UserController;
use App\Models\User;
// Route definition...
Route::get('/users/{user}', [UserController::class, 'show']);
// Controller method definition...
public function show(User $user)
{
return view('user.profile', ['user' => $user]);
}
Route::resource() là một chức năng giúp chúng ta xây dựng RESTful (websevice) một cách nhanh chóng.
use App\Http\Controllers\PhotoController;
Route::resource('photos', PhotoController::class);
Các method, URI sẽ được tạo ra như sau:
Verb | URI | Route Name |
GET | /photos | photos.index |
GET | /photos/create | photos.create |
POST | /photos | photos.store |
GET | /photos/{photo} | photos.show |
GET | /photos/{photo}/edit | photos.edit |
PUT/PATCH | /photos/{photo} | photos.update |
DELETE | /photos/{photo} | photos.destroy |
Resource route được kết hợp với RESTfull Controller tương ứng sẽ được học ở bài sau
Lời kết
Qua 2 phần chia sẽ về route hẳn các bạn đã nắm được phần nào triển khai Route trong laravel. Phần sau chúng ta sẽ tìm hiểu về View và Blade template trong Laravel.
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE