Mặc định cấu trúc thư mục ứng dụng Laravel được thiết kế để xây dựng cả ứng dụng nhỏ và ứng dụng lớn. Tất nhiên, ta có thể hoàn toàn tổ trức lại cấu trúc thư mục theo ý 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 là Composer có thể tự động tải được các class. Để hiểu rõ hơn về cấu trúc thư mục ta có thể xem tại đây
app
Thư mục app, chứa tất cả các project được tạo, hầu hết các class trong project được tạo đều ở trong đây. Không giống các framework khác, các file model không được chứa trong một thư mục riêng biệt, mà được chứa ngay tại thư mục app này.
app/Console
Thư mục Console, chứa các tập tin định nghĩa các câu lệnh trên artisan.
app/Exceptions
Thư mục Exceptions, chứa các tập tin quản lý, điều hướng lỗi.
app/Http/Controllers
Thư mục Controllers, chứa các controller của project.
app/Http/Middleware
Thư mục Middleware, chứa các tập tin lọc và ngăn chặn các requests.
app/Providers
Thư mục Providers, chứa các file thực hiện việc khai báo service và bind vào trong Service Container.
bootstrap
Thư mục bootstrap, 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
Thư mục config, chứa tất cả những file cấu hình.
database
Thư mục factories, chứa các file định nghĩa các cột bảng dữ liệu để tạo ra các dữ liệu mẫu.
database/migrations
Thư mục migrations, chứa các file tạo và chỉnh sửa dữ liệu.
database/seeds
Thư mục seeds, chứa các file tạo dữ liệu thêm vào CSDL.
public
Thư mục public, chứa file index.php giống như cổng cho tất cả các request vào project
resources
Thư mục resources, chứa những file view và raw, các file biên soạn như LESS, SASS, hoặc JavaScript. Ngoài ra còn chứa tất cả các file lang trong project.
resources/views
Thư mục views, chứa các file view xuất giao diện người dùng.
routes
Thư mục routes, chứa tất cả các điều khiển route (đường dẫn) trong project. Chứa các file route sẵn có: web.php, channels.php, api.php, và console.php.
routes/api.php
file api.php, điều khiển các route của ứng dụng, như route của ứng dụng User (đăng ký, đăng nhập, …).
routes/web.php
file web.php, điều khiển các route của view, như route của trang top, sản phẩm…
storage
Thư mục storage, chứa các file biên soạn blade templates của bạn, file based sessions, file caches, và những file sinh ra từ project: Thư mục app, dùng để chứa những file sinh ra từ project, framework chứa những file sinh ra từ framework và caches, logs chứa file logs, /storage/app/public lưu những file người dùng tạo ra như hình ảnh
tests
Thư mục tests, chứa những file tests, như PHPUnit test.
vendor
Thư mục vendor, chứa các thư viện của Composer.
.env
file .env, chứa các config chính của Laravel.
artisan
file thực hiện lệnh của Laravel.
.gitattributes, .gitignore
File dành cho xử lý git.
composer.json, composer.lock
File của Composer.
package.json
file package.json, chứa các package cần dùng cho projects.
phpunit.xml
file phpunit.xml, xml của phpunit dùng để testing project.
webpack.mix.js
file webpack.mix.js, file dùng để build các webpack.
Leave a Comment