2012-08-16 175 views
33

データベースのレコードが存在するかどうかを即座に確認できる機能はありますか?レコードが存在するかどうかを確認するCakephp

今、私はレコードが存在するかどうかを検出するために次のコードを使用していますが、より簡単で良い方法があると思います。

$conditions = array(
    'conditions' => array(
     'User.id' => $this->Session->read('User.id'), 
     'User.activation_key' => $this->Session->read('User.key') 
    ) 
); 
$result = $this->User->find('first', $conditions); 
if (isset($result['User'])){ 
    //do something 
} 

のようなものがあります:

$conditions = array(
    'conditions' => array(
     'User.id' => $this->Session->read('User.id'), 
     'User.security_key' => $this->Session->read('User.key') 
    ) 
); 
if ($this->User->exists($conditions)){ 
    //do something 
} 

わかりましたが、はい、あります。それはexists()と呼ばれていますが、同じものが必要ですが、パラメータが必要なので、自分の条件をチェックに追加できます。

私はGoogleを検索しましたが、これについてのトピックは見つかりませんでした。まあ、phpとmysqlについてはたくさんありますが、cakephpについてはそうではありません。私はケーキ特有の答えが必要です。あなたが探しているものをお時間を

感謝:)

答えて

61

Model::hasAny

使い方です:

$conditions = array(
    'User.id' => $this->Session->read('User.id'), 
    'User.security_key' => $this->Session->read('User.key') 
); 
if ($this->User->hasAny($conditions)){ 
    //do something 
} 
+4

、どうもありがとうございました。この機能は、周りにいた気づかなかった:) – Jelmer

関連する問題