Khanh Hoang - Kenn
Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.
CakePHP :
Một số tính năng của CakePHP :
Có thể xem thêm bảng so sánh tính năng của các framework phổ biến hiện nay tại đây
Trong bài viết hướng dẫn người dùng các cài đặt CakePHP,
Ở đây tôi dùng CakePHP ver1.36 webserver XAMPP tích hợp Mysql và Apache.
Yêu cầu hệ thống :
Chuẩn bị cài đặt :
Tải phiên bản CakePHP mới nhất (1.3.6 stable) từ địa chỉ: http://github.com/cakephp/cakephp/archives/1.3
- Giải nén, cho vào thư mục của web server
- Trong ví dụ này thư mục webser góc của tôi là : C://xampp/htdocs
- Vậy ta có cấu trúc như sau : C://xampp/htdocs/cakephp
Truy cập qua địa chỉ web : http://localhost/cakephp
Tới đây xem như cài đặt CakePHP thành công :
- Chmod thư mục app/tmp thành 0777 (nếu trên host, còn localhost thì khỏi cần)
- Mở file app/config/core.php
- Thay đổi giá trị của dòng Configure::write(‘Security.salt’, ‘DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi2010‘ );
- Thay đổi giá trị của dòng Configure::write(‘Security.cipherSeed’, ‘768593096574535424967496836452011‘);
- Tạo csdl với tên: cake_test
- Mở file app/config/database.php, điền như sau:
var $default = array( 'driver' => 'mysql', 'persistent' => false, 'host' => 'localhost', 'login' => 'root', 'password' => 'my_password', 'database' => cakephp_test', 'prefix' => '', );
Bạn cần thay đổi các mục in đậm cho phù hợp với cấu hình trên máy bạn
Sau khi tải và giải nén CakePHP, bạn có thể thấy các files và thư mục sau :
- app : là nơi chứa mã nguồn ứng dụng của bạn (phần này quang trọng)
- cake : là nơi chứa mã nguồn của CakePHP. Bạn không nên chỉnh sửa các files trong thư mục này nếu bạn không hiểu rõ về chúng
- vendors : chứa ứng dụng của bên thứ 3, phục vụ cho ứng dụng của bạn
- plugins : chứa các thành phần mở rộng dùng cho ứng dụng
Cấu trúc thư mục app :
Ghi chú :
Config Chứa file cấu hình hệ thống
Controllers Chứa các controller và component
Locale Chứa file ngôn ngữ , phục vụ cho ứng dụng đa ngôn ngữ
Molels Chứa file Model và behavor, datasource
Plugins Chứa các gói mở rộng
Tmp Thư mục tạm của ứng dụng
Vendors Chứa ứng dụng của bên thứ 3
Views Chứa các file giao diện
Webroot Chứa tài liệu (hình ảnh,file..), file CSS , file javascript…
CakePHP hoạt động theo mô hình MVC. Mô hình này chia ứng dụng ra làm 3 phần chính:
Trong bài viết này giúp người đọc hiểu được cách hoạt động chung của CakePHP trên mô hình MCV, ở những phần sau sẽ đi vào chi tiết hơn về cách sử dụng của CakePHP.
Ví dụ về mô hình MVC căn bản :
Ta có liên kết http://abc.com/product/view/10
- User A click vào 1 liên kết có dạng http://abc.com/products/view/10 thì :
- Tham số thứ 1 : ta có Controller product
- Tham số thứ 2 : ta có view là tên của 1 action của Controller product sẽ được gọi để thực thi 1 hành động nào đó
- Tham số thứ 3 : ta có 1 giá trị 10, thông thường tham số thứ 3 có thểm có hoặc không, tùy vào mục đích sử dụng, ở đây tôi có tham số = 10 để xem sản phẩm có id = 10
Mô tả bằng lời qua ví dụ trên :
Vào địa chỉ http://abc.com để xem sản phẩm có id=10
Tại sao lại dùng mô hình MVC?
1. http://www.cakephp.org/ Trang chủ của CakePHP, cung cấp thông tin mới nhất về các phiên bản của Cake, link download mã nguồn, ebooks cùng nhiều dịch vụ khác liên quan
2. http://book.cakephp.org/ Hướng dẫn sử dụng CakePHP
3. http://bakery.cakephp.org/ Bài hướng dẫn, mã nguồn liên quan tới CakePHP
4. http://api.cakephp.org/ Thư viện API của CakePHP
5. http://www.cakeforge.org/ Nơi chia sẻ các dự án thực hiện bằng CakePHP
6. Kênh IRC server: irc.freenode.net. Với 3 nick: cakephp, cakephp-docs, cakephp-bakery
7. http://groups.google.com/group/cake-php Bạn cũng có thể lên đây để hỏi về CakePHP
8. http://www.cakephpforum.net/ Diễn đàn về CakePHP