Bài viết này mình sẽ hướng dẫn cách tạo và cấu hình module trong 1 project.

Đầu tiên ta cần biết module là gì? Nói cho dễ hiểu ta có thể hình dung như sau, Module trong yii là một thư mục có dạng cấu trúc như một project yii mà chúng ta hay tạo, bên trong nó cũng chứa các thành phần cơ bản như :models, views, controllers, components... Và người ta sử dụng module để có thể dễ dàng phân tách 1 dự án thành nhiều thành phần.

Việc chia dự án thành nhiều module rất có tác dụng trong việc phát triền và bào trì cũng như nâng cấp dự án. Nó theo phương châm " chia nhỏ để trị" như mấy ông thầy dạy lập trình hay nói.

Việc tạo một module trong yii cụng rất đơn giản: ta chỉ việc sử dụng yiic shell với cú pháp

MÃ: CHỌN module TênModule Nên lưu ý tên module phân biệt chử hoa và thường, và nó được xem là modul id.

Và yii tool sẽ tạo ra 1 thư mục nhỏ có cấu trúc như hình minh hoạ bện dưới (ờ dưới mình post tấm hình về 1 module ThanhVien dùng để quản lý thành viên.)

- Nhìn sơ qua cấu trúc ta thấy nó là phiên bản thu nhỏ của một project.

- Việctạo 1 model, controller trong module ta có thể sử dụng yiic shell bằng cách bình thường trên project rồi copy vào các thư mục tương ứng trong module.

- Sau khi tạo xong module để có kết nối vào project ta cấu hình trong file main.php như sau:

-Việc truy cập 1 action của module như sau : moduleid/controllid/actionid.MÃ: CHỌN 'modules' => array( 'ThanhVien'=>array( 'defaultController'=>'thanhvien' ) 'ThanhVien' là id của module cũng là tên của module khi tao tạo bằng yiic shell. . MÃ: CHỌN Yii::app()->controller->module->value ->return ra giá trị của value. . 'defaultController ' : set controller default cho module ta có thể tạo thêm các giá gị khởi tạo khác bên trong và truy cập bằng cách.Theo giới thiệu của yii thì bên trong module ta có thể tạo không giới hạn các module bên trong 1 module.

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master Your Semester with a Special Offer from Scribd & The New York Times

Cancel anytime.