次のコードがあります。
public function check()
{
$result = $this->User->field('id', array('username' => 'alek@lol.pl'));
debug($result);
}
私のユーザーテーブルには、次のレコードがあります。
NSERT INTO `users` (`id`, `username`, `password`, `role`, `created`, `modified`) VALUES
('5', 'alek@lol.pl', '64c918dd65b67b455248c2498bcc5421a66b68a6', 'member', '2012-04-24 10:56:37', '2012-04-24 10:56:37');
このコントローラーメソッドチェックの結果は次のとおりです。
false
SQLクエリは次のとおりです。
Nr Query Error Affected Num. rows Took (ms)
1 SELECT `User`.`id` FROM `freebooks`.`users` AS `User` WHERE `username` = 'alek@lol.pl' LIMIT 1 1 1 0
したがって、SQL は 1 行を返しますが、ケーキの結果は「false」です。何が問題なのですか? 何か壊れた??
PhpMyAdmin でこの SQL ステートメントを実行すると、id = 5 が正しく返されます
そして、1行を次のように変更すると
$result = $this->User->find('all');
これは印刷します
true
不可能だよ!!!