cake php检查自定义列是否存在记录

时间:2015-07-01 10:34:11

标签: php cakephp

有没有办法检查蛋糕php中是否存在记录。我知道有一个功能.CakePHP 2

$this->Notes->id = $id;
if (!$this->Notes->exists())
{
    throw new NotFoundException(__('Invalid Notes'));
}

但默认情况下会检查列id如何检查自定义列,假设它是note_id。我的attemts是refer from here

尝试#1

if (!$this->Noteshistory->exists(['note_id'=>$id]))
{
    throw new NotFoundException(__("Invalid Note "));
}

也尝试设置note_id

$this->Noteshistory->note_id = $id;
if (!$this->Noteshistory->exists(['note_id'=>$id]))
    {
        throw new NotFoundException(__("Invalid Note "));
    }

但没有运气。

2 个答案:

答案 0 :(得分:12)

hasAny是解决方案 -

$this->Noteshistory->hasAny(['note_id'=>$id])
如果找到,则

将返回true false

  版本 3.x

hasAny 不可用

答案 1 :(得分:2)

您可以使用hasAny(): - https://api.cakephp.org/2.6/class-Model.html#_hasAny

$conditions = array(
    'note_id'=>$id
);
if ($this->Noteshistory->hasAny($conditions)){
    //do something
}

注意: - 在3.x版本中不可用