Tìm hiểu cấu trúc thư mục Laravel

Tìm hiểu cấu trúc thư mục Laravel là vấn đề được nhiều lập trình viên quan tâm, bởi những kiến thức trên trường lớp là không đủ, vì vậy bài Tìm hiểu cấu trúc thư mục Laravel sẽ chia sẻ tới bạn nhiều thông tin hữu ích

Mọi người vẫn hỏi tôi về việc học lập trình nói chung và Laravel nói riêng có cần năng khiếu hay quá khó để tiếp cận hay không. Thì tôi có thể trả lời rằng, học lập trình cũng như việc bạn học tiếng Anh hay bất kỳ một ngôn ngữ khác, bởi lập trình...là ngôn ngữ của máy tính, để máy tính đọc và máy tính thực hiện theo yêu cầu của mình, bạn thích là học được.

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é.

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.

Tìm hiểu cấu trúc thư mục Laravel

  • 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).

Tìm hiểu cấu trúc thư mục Laravel

  • 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).

Tìm hiểu cấu trúc thư mục Laravel

  • 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:

Tìm hiểu cấu trúc thư mục Laravel

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.

Hy vọng với bài viết về Tìm hiểu cấu trúc thư mục Laravel đã giải đáp giúp bạn phần nào về kiến thức lập trình Laravel. Như tôi đã nói, ngôn ngữ lập trình không quan trọng bằng tư duy giải thuật, tư duy logic để giải quyết vấn đề.

Với những năm trước đây, lập trình viên là một cái nghề khó và kén chọn người học, đồng nghĩa với việc thu nhập hàng tháng của các lập trình viên luôn cao. Còn những năm gần đây, thì lập trình là môn học phổ thông, và ai cũng nên học một ngôn ngữ lập trình nào đó.

Nếu bạn còn bất kỳ câu hỏi nào trong việc học lập trình online, hãy gửi yêu cầu cho tôi qua email hoidapcode.com@gmail.com hoặc để lại comment bên dưới, tôi sẽ giải đáp trong vòng 24 giờ!

Blog hoidapcode.com là blog được tổng hợp tự động các bài học, thông tin về lập trình trên mạng internet. Nếu bạn có ý kiến hoặc đóng góp về bài viết này, hãy liên hệ với tôi!