Get in touch
or send us a question?
CONTACT

[Laravel Tutorials] – Bài 2: Cấu trúc thư mục của Laravel

Ở bài 1, chúng ta đã cài đặt thành công Laravel. Bài này mình sẽ giới thiệu các thư mục và chức năng của chúng trong Laravel.

Với Laravel Framework, bạn có thể hoàn toàn tổ chức lại cấu trúc thư mục theo ý bạn muốn. Laravel hầu như không áp đặt những hạn chế về nơi các class nằm ở thư mục nào, miễn sao các Class tuân thủ nguyên tắc autoload của Composer.

Cấu trúc thư mục của Laravel

Bâyy giờ chúng ta mở dự án Laravel mà chúng ta đã cài đặt từ bài 1 ra:

Trong đó:

  • app: là nơi chứa tất cả các Class của project
  • bootstrap: là nơi chứa những file khởi động của framework và những file cấu hình auto loading, route, và file cache
  • config: là nơi chứa các file cấu hình
  • database: là nơi chứa những file tạo, thao tác database và tạo dữ liệu mẫu
  • public: là nơi mà người dùng truy cập vào. Đây cũng là nơi sẽ chứa hình ảnh, css, javascript
  • resources: là nơi chứa đựng như là các file LESS, Sass (cái đám này hổ trợ viết CSS,nếu các bạn chưa biết thì có thể tìm hiểu sau), các file ngôn ngữ, và template để render ra HTML(View)
  • routes: là nơi chứa tất cả các điều khiển route (đường dẫn) trong project.
  • storage: là nơi chứa đựng App storage, như file upload … Framework storage (cache), và bản logs.
  • tests: là nơi chứa các test cases
  • vendor: là nơi chứa các thư viện được cài đặt từ composer

Thư mục App

Đây là thư mục chính chứa tất cả các cốt lõi trong ứng dụng của bạn, hầu hết các class trong ứng dụng của bạn đều ở trong đây.

Thư mục app/Console

Thư mục chứa các tập tin định nghĩa các câu lệnh trên artisan

Thư mục app/Exceptions

Thư mục chứa các tập tin quản lý, điều hướng lỗi

Thư mục app/Http/Controllers

Thư mục chứa các controller của project

Thư mục app/Http/Middleware

Thư mục chứa các tập tin lọc và ngăn chặn các requests

Thư mục app/Providers

Thư mục chứa các file thực hiện việc khai báo service và bind vào trong Service Container

Thư mục app/Models

Thư mục chứa các model của project (Với Laravel 8 sẽ có sẵn thư mục Models)

Thư mục resources

Thư mục resources/views

Thư mục chứa các file view xuất giao diện người dùng

Thư mục routes

Chứa các file route sẵn có: web.php, channels.php, api.php, và console.php

Thư mục routes/api.php

Cấu hình các route liên quan đến API

Thư mục routes/web.php

Cấu hình các route liên quan đến web (Có giao diện người dùng)

Kết luận

Trên đây, tôi đã chia sẻ cấu trúc các thư mục của Laravel Framework. Trong bài tiếp theo chúng ta sẽ tìm hiểu thiết lập cấu hình trong Laravel. Nếu có bất kỳ câu hỏi nào hãy comment phía dưới bài viết này.

Cảm ơn các bạn đã quan tâm theo dõi!