CakePHP:不要在find()中检索id字段

时间:2011-01-20 19:32:38

标签: cakephp find

我想从表中检索一些列,没有 id列,但CakePHP会将其添加到find()数组中。 我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:2)

使用find params设置所需的字段:

$this->find('all', array(
    'conditions' => array(), //array of conditions
    'fields' => array('field1', 'field2') //array of field names
));

http://book.cakephp.org/2.0/en/models/retrieving-your-data.html

正如我在评论中所提到的,在检索相关模型数据时,cake使用id来获取外表中的相关数据。如果你考虑一下,CakePHP会怎么做呢?

如果你真的必须删除id列,你可以在查找调用后执行此操作:

$data = $this->Model->find('first', array(
    'conditions' => array(), //array of conditions
));
unset($data['Model']['id']);