yii を使用してデータベース テーブルにレコードが既に存在するかどうかを確認しようとしています。ドキュメントを読むと、findByAttributes()またはfind()を使用して記録を見つける代わりに使用できるメソッドexists()があることがわかります。レコードを取得する必要がなく、レコードが存在するかどうかを確認するだけなので、使用されるメモリが少なくなるという利点があります。
このメソッドを次のように実装しようとすると:
if (UserRsvp::model()->exists(array("user_id"=>$userId))) {
echo 'Exists';
} else {
echo "Doesn't exist";
}
次のエラーが表示されます: *CException : Property "CDbCriteria.user_id" is not defined.*
findByAttributes の方法で実行しようとすると、正常に動作します (ただし、効率を向上させるために exists() を使用したい)
if(UserRsvp::model()->findByAttributes(array("user_id"=>$userId))) {
echo 'Exists';
} else {
echo "Doesn't exist";
}
exists() メソッドに何か問題がありますか?