CakePHPのcheckboxにTinyint型を入れてみるけど表示されない
formヘルパーでcheckboxを出力したときにcheckedにチェックを入れた状態で表示したくてMySQLから引っ張ってきたtinyint型の1を直接checkedのオプションにつけてみるけど表示されない。
//true or falseだとok
$form->checkbox("HogeHoge.Foo",array("checked"=>true));
//これだとチェックが入らない
$form->checkbox("HogeHoge.Foo",array("checked"=>$tinyint));
これは、formヘルパー内のオプションチェックの場所で === (厳密に比較されているために true === 1 がfalseになるようだ
対処方法
//三項演算で無理やりtrueを出力
$form>checkbox("HogeHoge.Foo",array("checked"=>($tinyint ? true:false)));
配列の中に無理やり演算を入れたので微妙な感じかもしれない
-
前の記事
MySQLのDateとDatetimeの違い 2010.01.20
-
次の記事
phpMyAdminでエラーがでたためセッションが開始出来ませんでした。 2010.01.29