检查模型以查看Yii-PHP中是否存在记录

Lon*_*Dev 2 php mysql yii

我试图使用yii检查数据库表中是否已存在记录.阅读文档说它有一个方法exists()可以使用findByAttributes()find()来代替查找记录.使用较少内存的好处是因为它不必检索记录,只检查它是否存在.

当我尝试实现这样的方法时:

    if (UserRsvp::model()->exists(array("user_id"=>$userId))) {
        echo 'Exists';
    } else {
        echo "Doesn't exist";
    }
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:*CException:未定义属性"CDbCriteria.user_id".*

如果我尝试使用findByAttributes方式它可以正常工作(但我想使用exists()来提高效率)

if(UserRsvp::model()->findByAttributes(array("user_id"=>$userId))) {

  echo 'Exists';
} else {
  echo "Doesn't exist";
}
Run Code Online (Sandbox Code Playgroud)

我是否在使用exists()方法做错了什么?

Dan*_*ero 19

用这个:

UserRsvp::model()->exists('user_id = :user_id', array(":user_id"=>$userId));
Run Code Online (Sandbox Code Playgroud)