Get in touch
or send us a question?
CONTACT

[Laravel Tutorials] – Bài 5: Route trong Laravel (phần 2)

Ở 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

Route Group

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
    });
});

Binding Model Trong Route

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]);
}

Resource Route

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:

VerbURIRoute Name
GET/photosphotos.index
GET/photos/createphotos.create
POST/photosphotos.store
GET/photos/{photo}photos.show
GET/photos/{photo}/editphotos.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.

Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Delia Barries
3 months ago

Wonderful blog! I found it while searching on Yahoo News. Do you have any suggestions on how to get listed in Yahoo News? I’ve been trying for a while but I never seem to get there! Thank you

Susan Teitelbaum
3 months ago

Howdy this is somewhat of off topic but I was wanting to know if blogs use WYSIWYG editors or if you have to manually code with HTML. I’m starting a blog soon but have no coding skills so I wanted to get guidance from someone with experience. Any help would be enormously appreciated!