Yii 如何检查数据库中已存在的条目

Yii 如何检查数据库中已存在的条目,yii,Yii,我的默认控制器功能 public function actionAddNewCategories() { $model = new AddNewCategory(); $model->category_name=strip_tags(trim($_POST['categoryname'])); $model->category_description=strip_tags(trim($_POST['categorydes

我的默认控制器功能

    public function actionAddNewCategories() {

         $model = new AddNewCategory();
         $model->category_name=strip_tags(trim($_POST['categoryname']));
         $model->category_description=strip_tags(trim($_POST['categorydescription']));
         $model->save(false); 

         $category_list=Invoice::getCategoryName();
         $test="";
         $test = ' <option value="">Select Category</option>';  
         foreach($category_list as $value ){
                $test .= "<option >{$value['category_name']}</option>";    
         }
         echo $test;
    }
public function getCategoryName() {

    $id = Yii::app()->db->createCommand()
            ->select('category_name')
            ->from('add_new_category c')
            ->queryAll();
    return $id;
}

您可以将唯一规则添加到AddNewCategory模型中,如下所示:

array('fieldName','unique','className'=>__CLASS__,'attributeName'=>'columnName','allowEmpty'=>FALSE)
$exist=AddNewCategory::model()->exist(array('columnName'=>'VALUE'));
现在,您已经有了一条规则,它拒绝插入具有现有值的新记录

另一种替代方法是使用exist,如下所示:

array('fieldName','unique','className'=>__CLASS__,'attributeName'=>'columnName','allowEmpty'=>FALSE)
$exist=AddNewCategory::model()->exist(array('columnName'=>'VALUE'));
哪一个$exist变量包含一个布尔值,表示是否存在输入条件的记录


在php中使用yii框架