我想从字段中检索多个值。我正在使用此代码的代码
$conditions = array('Tag.name'=>$compare);//$compare = array('value1', 'value2',..);
$values = $this->find('all', array('conditions' => $conditions));
但它不断出现
SELECT `Tag`.`id`, `Tag`.`name`, `Tag`.`count` FROM `tags` AS `Tag` WHERE `Tag`.`name` IN ('tag2', ' tag1', ' one tag')
问题是它只检索给定的第一个值。而不是所有的价值观。如何让它选择数组中的所有值。
答案 0 :(得分:2)
您使用的是什么版本的Cake?
但主要的是你的条件需要在一个字段数组中。
find('all', array(
'conditions' => array('name' => 'Thomas Anderson'),
'fields' => array('name', 'email'),
'order' => 'field3 DESC',
'recursive' => 2,
'group' => 'type'
));
您的查询无效的原因是您需要将其移动到该模式中。
所以你的查询是,
$compare = array('value1', 'value2');
$values = $this->Model->find('all', array('fields' => $compare));
在你的例子中不确定你是否想要省略它,但总是最好包括你正在运行查找的模型:)