LARAVEL 4X CĂN BẢN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Bài 02: Cấu trúc thư mục cơ bản của Laravel

Bất kì một Framework nào cũng đưa ra một mô hình các cấu trúc thư mục chuẩn để giúp các lập trình viên sử dụng có thẻ đọc code của nhau và hiểu được, với cấu trúc này giúp cho lập trình viên dễ dàng tiếp xúc hơn thay vì bắt họ tự nghĩ ra.

Vậy trong bài này chúng ta sẽ tìm hiểu cấu trúc của một ứng dụng Laravel được trình bày như thế nào. Lưu ý đây chỉ là cấu trúc cơ bản nhưng chuẩn của Laravel nhé.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cấu trúc thư mục cơ bản trong Laravel FW

Sau đây là sơ đồ cây các folder trong ứng dụng khi các bạn setup cài đặt Laravel.

pathroot/
        /app/
            /commands/
            /config/
            /controllers/
            /database/
            /lang/
            /models/
            /start/
            /storage/
            /tests/
            /views/
        /bootstrap/
        /public/
            /index.php
            /assets/
            /packages/
            /uploads/
        /vendor/
        /workbench/
        /Composer.json
        /Artisan
        /server.php

Trong đó:

  • Pathroot là đường dẫn tới thư mục laravel và chứa tất cả các file của laravel, bao gồm các file cần phải có composer.json, artisan, server.php, và các thư mục con chính app, bootstrap, public, vendor, workbench (có thể không có).

Composer.json là file để cấu hình việc thao tác với composer như install hay update Laravel, thêm các file hỗ trợ ...

Artisan là file mà laravel tạo ra để hỗ trợ chạy lệnh: php artisan

server.php cần có để chạy lệnh: php artisan serve

  • app là thư mục chứa các file cấu hình, lưu trữ, tập lệnh của laravel, trong đó gồm có:
    • commands: các command sử dụng trong laravel (hiện tại chưa cần để ý đến nó).
    • config: nơi chứa các file cấu hình laravel như database, mail, url, ...
    • models, views, controllers: nơi chứa file của mô hình MVC
    • database: nơi chứa các file xây dựng và khởi tạo cơ sở dữ liệu
    • lang: nơi chứa các file ngôn ngữ
    • start: các file xử lý khi laravel hoạt động
    • storage: nơi chứa các file lưu trữ của laravel như log, cache, ...
    • tests: chứa test file (cũng chưa cần để ý đến nó).
    • File routes.php: nơi chứa các định tuyến (route) của laravel
    • file filters.php: nơi chứa các bộ lọc định tuyến.

app folder PNG

  • bootstrap: thư mục chứa file cài đặt các biến cơ bản của laravel (paths.php), nơi cài đặt môi trường làm việc (start.php) đồng thời cũng là nơi các filekhác được include vào laravel (autoload.php).

bootstrap folder PNG

  • public: chứa file index.php, .htaccess, assets (thường dùng để chứa các file js, css, image của giao diện) . File khi khởi chạy ứng dụng, file .htaccess sẽ chuyển hướng mọi yêu cầu (request) tới file index.php, index.php sẽ gọi đến các thành phần tương ứng của laravel (model, view, controller, ...) để thực thi và trả về kết quả (response).

public folder PNG

  • vendor: chứa bộ mã nguồn của laravel và các thành phần đi kèm laravel, cũng như các gói (packages) sau này sẽ thêm vào laravel
  • workbench: thư mục dành cho các lập trình viên tự tạo ra các gói (package). Mặc định thư mục này sẽ không tồn tại

Hình ảnh bao quát:

cau-truc-folder-laravel-1.png

Lưu ý: Một việc rất quan trọng trong học laravel đó là tìm lỗi của laravel, mặc định thì laravel đã ẩn lỗi đi, nếu muốn hiển thị lỗi bạn vào file app/config/app.php tìm và sửa như sau:

//tìm dòng
'debug' => flase,
và sửa thành
'debug' => true,

Lời kết:

Như vậy ta đã nắm được cơ bản về cấu trúc laravel, ở bài sau mình sẽ hưỡng dẫn các bạn sử dụng phần mềm openserver để chạy laravel với đúng cấu trúc chuẩn như trên.

Cùng chuyên mục:

Bài 1: Laravel là gì? hướng dẫn cài đặt laravel bằng Composer

Bài 1: Laravel là gì? hướng dẫn cài đặt laravel bằng Composer

Bài 04: Tìm hiểu cấu trúc của Laravel 5.x

Bài 04: Tìm hiểu cấu trúc của Laravel 5.x

Và trong bài này, chúng ta sẽ tìm hiểu cấu trúc của Laravel để có…

Bài 03: Hướng dẫn cài đặt Laravel 5.x

Bài 03: Hướng dẫn cài đặt Laravel 5.x

Để bắt đầu series tự học Laravel 5x thì công việc đầu tiên là bạn…

Bài 02: Hướng dẫn sử dụng Composer PHP

Bài 02: Hướng dẫn sử dụng Composer PHP

Composer là một công cụ tuyệt vời cho tín đồ PHP và trong bài này,…

Bài 11: Sử dụng Query Builder (Model) trong laravel

Bài 11: Sử dụng Query Builder (Model) trong laravel

Model trong mô mình MVC dùng để tương tác với cơ sở dữ liệu và…

Bài 10: Sử dụng Blade template engine trong Laravel

Bài 10: Sử dụng Blade template engine trong Laravel

Template engine có tác dụng giúp sạch đi những đoạn code PHP nằm trong View…

Bài 4: Sử dụng View trong laravel

Bài 4: Sử dụng View trong laravel

Trong bài này chúng ta sẽ tìm hiểu đến View, một thành phần khá quan…

Bài 3: Sử dụng Controller trong laravel

Bài 3: Sử dụng Controller trong laravel

Sau khi route nhận được request thì sẽ chuyển hướng request đến cho controller và…

Bài 07: Sử dụng Route::filter và Route::group trong laravel

Bài 07: Sử dụng Route::filter và Route::group trong laravel

Giới thiệu về 2 loại route rất quan trọng trong việc xử lý logic và…

Bài 06: Sử dụng Route::controller và Route::resource trong laravel

Bài 06: Sử dụng Route::controller và Route::resource trong laravel

Ở bài trước mình có giới thiệu tổng quan về rout trong Laravel và việc…

Bài 02: Tổng quan về route trong laravel

Bài 02: Tổng quan về route trong laravel

Trong khuôn khổ bài viết này, mình sẽ giới thiệu đến bạn route trong laravel…

Bài 04: Những công cụ tốt nhất hỗ trợ học laravel

Bài 04: Những công cụ tốt nhất hỗ trợ học laravel

Trước hết, ai khi học php đều chọn cho mình 1 IDE hoặc text editor…

Bài 03: Cài đặt Openserver và tạo domain ảo trên localhost

Bài 03: Cài đặt Openserver và tạo domain ảo trên localhost

Trong bài 3 này mình sẽ giới thiệu các bạn cách tạo tên miền ảo…

Bài 01: Composer là gì?

Bài 01: Composer là gì?

Composer là một công cụ quản lý các thư viện trong PHP (Dependency Management), công…

Một cách quản lý filter trong Laravel

Một cách quản lý filter trong Laravel

Filter là một thành phần tuyệt vời mà laravel cung cấp cho chúng ta, nó…

Sử dụng Event trong Laravel

Sử dụng Event trong Laravel

Trong bài này mình sẽ giới thiệu event, cách tạo event và bắt event trong…

Bài 01: Laravel là gì? Hướng dẫn cài đặt laravel trên windows

Bài 01: Laravel là gì? Hướng dẫn cài đặt laravel trên windows

Trong chuỗi bài viết này mình sẽ viết về laravel 4.2.* trong môi trường windows,…

Top