我试图使用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)