Sử dụng bootstrap.php cấu hình các thư mục chứa source code trong cakephp

Sử dụng bootstrap.php cấu hình các thư mục chứa source code trong cakephp

Như chúng ta đã biết, cakephp viết theo mô hình MVC, do vậy khi ta viết các đoạn lệnh của chương trình chủ yếu chúng ta chỉ viết ở các thư mục trong app như model, controller, views, component(trong controller) và helper (trong views). Các file source chủ yếu sẽ được viết trên các thư mục này.

Sau đây tôi xin hướng dẫn các bạn chuyển các file source của chúng ta ra một thư mục khác ngoài app. Việc chuyển code ra khỏi thư mục app trong cakephp sẽ có một số tiện ích sau đây:

- Quản lý các file code sẽ dễ dàng và sáng sủa hơn, dễ bảo trì hơn. Các file của chúng ta khi chuyển ra thư mục riêng thì việc tìm kiếm sẽ trở lên dễ dàng hơn so với việc ta tìm kiếm một file trong một mớ file hỗn độn bên trong app.

- Với các bạn hay sử dụng svn thì việc này sẽ tạo ra một sự tiện dụng vô cùng lớn. Thay vì chúng ta phải gửi rất nhiều code, bao gồm cả những file không cần thiết thì nay ta chỉ việc gửi một thư mục duy nhất mà ở đó chứa tất cả những gì chúng ta cần làm nên.

- Việc thay đổi các bản cakephp mới hơn sẽ trở lên dễ dàng hơn, vì giơ đây chương trình của chúng ta nằm ngoài các thư mục của cakephp. Thay vì trước khi khi update bản cakephp mới chúng ta phải nhọc công copy riêng từng thư mục ra thì nay ta chỉ việc copy đề lên thư mục cũ là được. Các file của chúng ta không hề bị ảnh hưởng gì cả.

Còn rất nhiều tiện ích nữa mà tôi chưa nhắc đến. Nhưng tôi nghĩ như vậy có lẽ là đủ để các bạn nên thử rồi đấy. Sau đây tôi sẽ thực hiện chuyển dữ liệu ở các thư mục sau ra bên ngoài: controllers, views và models (tất nhiên là sẽ bao gồm cả các thư mục con nằm bên trong các thư mục này như là helpers, components ...). Và thư mục mà chúng ta sẽ chuyển đến là thư mục bitjsc nằm cùng cấp với thư mục app.

Sau đây là các công việc cần làm:

- Đầu tiên: Chúng ta sẽ tạo các thư mục cần thiết bao gồm:

+ Thư mục bitjsc nằm cùng cấp với thư mục app và cake.

+ Các thư mục con nằm trong bitjsc bao gồm : controllers, views, models và config.

+ Các thư mục con nằm trong các thư mục controller, views, models và config như là: helpers, component ....

- Tiếp theo, chúng ta sẽ cấu hình lại file bootstrap.php theo đường dẫn /app/config/bootstrap.php. Chúng ta thêm vào cuối file dòng sau:

require_once(dirname(__FILE__) . DS . '..' . DS . '..' . DS . 'bitjsc' . DS . 'config' . DS . 'bootstrap.php');

Dòng trên sẽ thực hiện gọi file bootstrap.php trong theo đường dẫn 'bitjsc/config/', đây là các thư mục mà chúng ta vừa tạo ở phía trên. Trong thư mục 'bitjsc/config/' chúng ta sẽ tạo ra một file có tên là bootstrap.php, trong file này ta sẽ thực hiện bẫy để khi gọi các model, controller hay views thì chương trình sẽ tự động gọi các file tương ứng trong thư mục bitjsc thay vì gọi chúng trong app.

- Tạo file bootstrap.php theo đường dẫn '/bitjsc/config/bootstrap.php'.  Nội dung của file bootstap.php sẽ như sau:

<?php
/**
* Bitjsc bootstrap file
*
* This file should be included in app/bootsrap.php. It connect WF
* with your application.
*
* @package bitjsc
*/

// Bitjsc MVC paths
define('BITJSC_DIR', ROOT . DS . 'bitjsc');
define('SETTINGS_CACHE_FILE', TMP . 'settings' . DS . 'cache');

$modelPaths = array(BITJSC_DIR . DS . 'models' . DS);
$viewPaths = array(BITJSC_DIR . DS . 'views' . DS);
$controllerPaths = array(BITJSC_DIR . DS . 'controllers' . DS);
$behaviorPaths = array(BITJSC_DIR . DS . 'models' . DS . 'behaviors' . DS);
$helperPaths = array(BITJSC_DIR . DS . 'views' . DS . 'helpers' . DS);
$componentPaths = array(BITJSC_DIR . DS . 'controllers' . DS . 'components' . DS);
?>

Vậy là chúng ta đã xong việc cấu hình lại đường dẫn. Giờ khi thêm mới bất kỳ file controller, views hay model gì các bạn chỉ cần thêm vào các thư mục tương ứng trong bitjsc là xong. Chúc các bạn thành công.

Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 10 (1 vote)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Bình luận (0)

 

Add Comment

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Làm phim Youtube – Xu hướng làm phim thời công nghệ số

Làm phim Youtube – Xu hướng làm phim thời công nghệ số

Những năm gần đây, cơn sóng làm phim youtube đổ bộ ồ ạt từ những tác phẩm vốn ít cho đến các tác phẩm bạo chi vài tỷ đồng, từ những hiện tượng cho tới nghệ sĩ, ca sĩ đều đua nhau xuất hiện.

Hướng dẫn Custom Search Module trong Drupal 6

Hướng dẫn Custom Search Module trong Drupal 6

The Drupal core provides a Search module that is great for many sites. However, it doesn't provide some of the more sophisticated features that some sites need. The Custom Search module is a good alternative if you want more control over what gets searched, who gets to search, and what results you see.

Gaming Becomes Exciting With 3D Bowling App for Android

Gaming Becomes Exciting With 3D Bowling App for Android

The Android market has so many games for users to choose from. The reality is not all these games are that great.

Công ty diệt chuột T&C

 

Diet con trung