* [[CakePHP]]
PHPで作成するときに、なにか便利なフレームワークを探していたのですが、特徴の中に
・ PHP4/PHP5の両方に対応
・ PEARライブラリを必要としない
とあり、一般で使うに当たってPHP5だけとかになるとなかなか使えるところもなく、Railsにもにているので、これを勉強してみたいと思います。
#contents
** 環境
http://cakephp.org/のホームページのhttp://cakeforge.org/frs/?group_id=23&release_id=215よりStable1.1.14.4797をダウンロードしました。
** TIPS
-コントローラから別のモデルを呼びたい。~
仮にコントローラがTestsControllerとし、呼びたいモデルがTest2とすると、
var $uses = array('Test','Test2');
とコントローラに定義してやる。TestsControllerなので、Testはデフォルトで定義されているが、$usersを使った場合は、定義してやる。
-別のヘルパーも使いたい。
var $helpers = array('Html','Form');
と$helpersに設定してやる。cake\libs\view\helpers\html.phpを参考にしてみよう。実は$form->createで悩んでいた。ずっと
Fatal error: Call to undefined function: create()
のメッセージがでるので、調べていると、確かにソースにはそんなメソッドはない。ん?参考にしているのが1.2で、今動かしているのは1.1だったのか... $html->formTagで解決だが、さてどちらのバージョンを使えばいいことやら。
-複数形の名前が知りたい~
thtmlで、
<?php echo Inflector::tableize("hoge"); ?>
hoges
CamelCaseで見たいときは、
<?php echo Inflector::camelize("hoge_data"); ?>
HogeData
他にもメソッドがあるので、cake\libs\inflector.phpを参照してみましょう。複数の場合でも同じ単語とか書いてあります。
-デバッグモード~
app\config\core.php
を参照すると、
define('DEBUG', 2);
とかあります。その上にコメントで
* - 0: production
* - 1: development
* - 2: full debug with sql
* - 3: full debug with sql and dump of the current object
とありますので、好きな値を設定しましょう。
** リンク
[[CakePHP 入門>http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=334&forum=3&post_id=573#forumpost573]]~
[[CakePHPフレームワークによる快速WEB開発>http://codezine.jp/a/article.aspx?aid=670]]~
[[Webプログラミングに関するメモ>http://asaton.seesaa.net/article/39760357.html]]~
[[モバイルサイトとPCの切り分け>http://phptips.seesaa.net/article/102607319.html]]
** 参考書籍
** コメント
--#comment