2014-08-31 62 views
0

我有一個表名爲ideyalar驗證的想法

在註冊頁面中,如果用戶之前拍攝的用戶名不能創建他們的個人資料。

並且每個用戶都可以創建他們的想法。但是我面臨的問題是:用戶可以創建具有相同名稱的想法。 我想限制這一點。但我不知道如何......

如果你幫我,我會很高興。

謝謝。最好的祝福。

PS:我應該使用CUniqueValidator,但不知道如何..

IdeyalarController代碼:

public function actionCreate() 
{ 
    $model = new Ideyalar; 

    // Uncomment the following line if AJAX validation is needed 
    // $this->performAjaxValidation($model); 

    if(isset($_POST['Ideyalar'])) 
    { 
     $model->attributes=$_POST['Ideyalar']; 
     $model->istifade = "1"; 
     $model->idcontact = Yii::app()->user->getId(); 

     if($model->save()){ 
      // if($model->validate()) { 
        $command = Yii::app()->db->createCommand(); 
        $command->insert ('mqrup', array(
          'idperson'=> Yii::app()->user->getId(), 
          'idideya'=>$model->idideya)); 

        $this->redirect(array('viewm','id'=>$model->idideya)); 
      // } 
     } 
    } 

    $this->render('create',array(
      'model'=>$model, 
    )); 
} 

回答

1

這是你的模型文件,而不是方法下控制器rules你應該有以下規則:

array('your_attribute', 'unique'), 

所以,你將有類似

public function rules() 
{ 
    return array(
     //some rules 
     array('your_attribute', 'unique'), 
    ); 
} 

wiki更多細節

+0

它工作得很好:)感謝。 – Mirjalal 2014-09-01 04:44:55