ちいたん その2 〜 addAssociationModel 〜 [ちいたん]
先日の日記でも書いたように、ちいたんでアソシエーションが行えるのは、とても魅力的でちいたんを使う気になった最大の理由でもある。
addAssociationModelの作者の方には、感謝している。
とはいえ、自分は気が小さいので、ちいたんを使いつつも何かあったらいつでもCakePHPに移行できるように、命名規則はCake式で使っている。
だから、ちいたんでは モデルのファイル名 = SQLのテーブル名 がデフォルトだけど、自分のはテーブル名は複数形にしてある。
が、なんでか addAssociationModel では、下記のように強制的にテーブル名を決めてしまっている。
これだと、CUser モデルは必ず user というテーブルを使わなきゃならないんで、下記のように変更した。
これにて、希望通りのテーブルを参照してくれるようになりましたとさ。
#今日はいつもコードの色を付けさせてもらってる、http://phpspot.net/が落ちていたので、色無し。
addAssociationModelの作者の方には、感謝している。
とはいえ、自分は気が小さいので、ちいたんを使いつつも何かあったらいつでもCakePHPに移行できるように、命名規則はCake式で使っている。
だから、ちいたんでは モデルのファイル名 = SQLのテーブル名 がデフォルトだけど、自分のはテーブル名は複数形にしてある。
class CUser extends CModel{
var $table = "users";
}
が、なんでか addAssociationModel では、下記のように強制的にテーブル名を決めてしまっている。
function createModel($name) {
$model = new $name();
$model->db = $this->db;
$model->table = strtolower( substr( $name, 1 ) );
$model->recursive = $this->recursive - 1;
return $model;
}
これだと、CUser モデルは必ず user というテーブルを使わなきゃならないんで、下記のように変更した。
function createModel($name) {
$model = new $name();
$model->db = $this->db;
//もしテーブル名が設定されていなかったら
if(!isset($model->table)){
$model->table = strtolower( substr( $name, 1 ) );
}
$model->recursive = $this->recursive - 1;
return $model;
}
これにて、希望通りのテーブルを参照してくれるようになりましたとさ。
#今日はいつもコードの色を付けさせてもらってる、http://phpspot.net/が落ちていたので、色無し。
ちいたん その1 〜 とりあえず使ってみた 〜 [ちいたん]
CakePHPが1.2になって重く感じることが多くなってしまったので、ちょっとしたシステムにはちいたんを使用することにした。
http://php.cheetan.net/
詳しくは下記サイト様が詳しいが、
「どうにかなるBLOG」
http://dounikanarublog.com/
とにかく、軽い。
そして、CakePHPを普段使っている人が作っただけに、CakePHP風に扱えるし、CakePHPのモデルオブジェクト等もほぼそのまま移植できた。素晴らしい。
CakePHPの魅力の一つでもある、アソシエーションもちいたん用に公開されている方がいたので、ありがたく拝借する。
「ちいたんでアソシエーション - 個人事業主のつぶやき」
http://d.hatena.ne.jp/toshiyuki_saito/20080427/1209287087
いまんところ、とても快適に動いています。
http://php.cheetan.net/
詳しくは下記サイト様が詳しいが、
「どうにかなるBLOG」
http://dounikanarublog.com/
とにかく、軽い。
そして、CakePHPを普段使っている人が作っただけに、CakePHP風に扱えるし、CakePHPのモデルオブジェクト等もほぼそのまま移植できた。素晴らしい。
CakePHPの魅力の一つでもある、アソシエーションもちいたん用に公開されている方がいたので、ありがたく拝借する。
「ちいたんでアソシエーション - 個人事業主のつぶやき」
http://d.hatena.ne.jp/toshiyuki_saito/20080427/1209287087
いまんところ、とても快適に動いています。