04/10/2018, 17:08

[BÀI 4]: LÀM QUEN CẤU TRÚC CỦA LARAVEL

1/ Cấu trúc thư mục 1 project Laravel: – Để tạo 1 website đơn giản bằng Laravel thì phải hiểu và nắm rõ chức năng của các thư mục của Laravel: Thư Mục Chức Năng Chính app Chứa controllers, models, views và assets của ứng dụng . Đây là code chính của ứng dụng của ban. Bạn sẽ dành ...

1/ Cấu trúc thư mục 1 project Laravel:

folder-laravel

– Để tạo 1 website đơn giản bằng Laravel thì phải hiểu và nắm rõ chức năng của các thư mục của Laravel:

Thư Mục Chức Năng Chính
app Chứa controllers, models, views và assets của ứng dụng . Đây là code chính của ứng dụng của ban. Bạn sẽ dành nhiều thời gian cho thư mục này.
bootstrap Chứa một số file của bootstrap framework và một số file cấu hình nạp tự động
config chứa các file cấu hình của hệ thống
database Chứa migration và seed cơ sở dữ liệu của bạn:
  • thư mục migration chứa những lớp PHP và cho phép Laravel cập nhật Schema cơ sở dữ lliệu của bạn mà vẫn giữ được toàn bộ versions cơ sở dữ liệu trong khi đồng bộ. Những file migration được tạo bởi tool Artisan.
  • Thư mục seeds chức những file PHP cho phép artisan đưa vòa bảng cơ sở dữ liệu với dữ liệu được đề xuất.
public  Thư mục public cũng dùng cho việc lưu trữ những file như css, javascripts, file images và những file khác. Nó cũng chứa file khởi động index.php.
resources chứa các view, các raw asset và các file ngôn ngữ.

– Thư mục views chứa những file mẫu HTML của bạn mà được sử dụng bởi controller hay route. Chú ý rằng bạn chỉ nên đặt những file mẫu view tại vị trí này vì những file css, javascript đã được đặt trong thư mục public.

-Thư mục lang chứa những file PHP chứa mãng của những chuỗi cho phép dễ dàng xác định vị trí của ứng dụng. Mặc định thư mục này chứa những dòng ngôn ngữ cho việc phân trang và chứng thực form người dùng với ngôn ngữ là tiếng Anh.

Storage Chứa các khuôn mẫu Blade, các file session, các file cache và các file khác được sinh ra bởi framework.
Tests Chứa các test tự động của bạn.
vendor Nơi này chứa toàn bộ code của bên thứ ba. Chứa plugin chúng ta cài thêm cho ứng dụng chúng ta.Chứa cả các composer package sử dụng bởi ứng dụng
config/app.php Cấu hình mức cài đặt ứng dụng ở khía cạnh khác như timezone, locale, mode debug và khóa mã hóa duy nhất
config/auth.php Drive xác thực
config/cache.php Nếu ứng dụng của bạn có lưu cache thì thời gian ứng dụng hồi đáp cho người dùng là nhanh hơn
database/migrations/ Thư mục migration chứa những lớp PHP mà cho phép Laravel cập nhật Schema cơ sở dữ liệu của bạn mà vẫn giữ được toàn bộ versions cơ sở dữ liệu trong khi đồng bộ. Những file migration được tạo bởi tool Artisan
database/seeds/ Thư mục seeds chứa những file PHP cho phép Artisan đưa vào bảng cơ sở dữ liệu với dữ liệu được đề xuất
app/Http/Controllers Chứa những file controllers của ứng dụng
resources/views Thư mục views chứa những file mẫu HTML của bạn mà được sử dụng bởi controller hay route. Chú ý rằng bạn chỉ nên đặt những file mẫu view tại vị trí này vì những file css, javascript đã được đặt trong thư mục public
resources/lang Những file PHP chứa mãng của những chuỗi cho phép dễ dàng xác định vị trí của ứng dụng. Mặc định thư mục này chứa những dòng ngôn ngữ cho việc phân trang và chứng thực form người dùng với ngôn ngữ là tiếng Anh
storage Thư mục storage được sử dụng để lưu trữ file tạm thời cho những dịch vụ Laravel khác nhau như session, cache, biên dịch template views. Thư mục này có thể ghi lại bởi web server. Thư mục này được duy trì bởi Laravel mà mình không cần can thiệp vào
app/Http/routes.php Đây là file route trong ứng dụng của bạn, nó lưu trứ toàn bộ những route để thông báo với Laravel cách như thế nào để kết nối khi có yêu cầu, theo hàm khai sẵn, controller và action. Đây là file cũng chứa cách khai báo cho một vài sự kiện bao gồm trang lỗi, và nó được sử dụng để định nghĩa views composers
app/filters.php File này dùng để giới hạn một số khu vực không được truy cập của trang web

*trong những thư mục được nhắc tới phía trên thì những thư mục đặc biệt được dùng khi tạo 1 website từ Laravel là: Controllers, Views, Public và file Routes.php

0