Việc quản lý nhiều model trong Laravel đôi khi chúng ta không quan tâm lắm nhưng khi project ngày càng lớn dần, chúng ta cần tạo folder riêng cho từng phần, vì thế trong bài này mình sẽ hướng dẫn bạn nhóm các model vào từng folder bạn mong muốn.

Di chuyển Model User và thư mục Models

Tạo thư mục Models nằm trong thư mục app.

Mặc định Model User sẽ nằm trong app, bây giờ mình sẽ di chuyển file User.php vào thư mục Models mình đã tạo và cấu hình lại namespace cho nó.

namespace App\Models;

Nếu bạn muốn tạo thêm thư mục con (Frontend) trong Models thì namespace sẽ là

namespace App\Models\Frontend;

Sau đó bạn vào config/auth và cấu hình lại đường dẫn model.

Tạo Model BaseModel và ArticleModel

Tạo 2 model BaseModel.phpArticleModel.php, lưu ý mình sẽ dùng namespace là App\Models

BaseModel sẽ kế thừa Model gốc. Còn ArticleModel sẽ kế thừa BaseModel. Mục đích là những gì chung, bạn có thể code vào BaseModel để tránh code trùng lặp lại nhiều.

BaseModel.php

ArticleModel.php

Tạo Alias cho Model

Bạn vào config/app và chèn dòng sau:

'Article' => App\Models\Article::class

Như vậy từ giờ về sau bạn chỉ cần sử dụng như sau:

Article::find(1);
Article::get();

Thay vì

App\Models\Article::find(1)
App\Models\Article::get()

Cám ơn bạn đã đọc bài viết, hi vọng sẽ giúp ích được cho bạn khi làm dự án.