2013-10-15 25 views
0

我有一个名为test.php的模型类文件。我有两个字段 - Function typeService Type。所以,现在我想看看Function typeService Type都是唯一的。即Function typeService Type在多行中不能相同。如何查看字段值在表中是否唯一

我正在使用创建和更新功能。我希望这两个函数看看是否重复Function typeService Type,然后不保存它,如果不重复,则保存它。

我用下面的例子来说明行 -

ID   Function type  Service Type 
    1     2    3 
    2     4    5 
    3     7    8 

这在Yii框架,而不是在MySQL的水平来实现。我如何在保存之前进行此验证。请在此引导我。

+0

保存之前,请检查它是否存在。如果是这样,不要做任何事情。如果没有,保存。你错过了什么? –

+0

@HamzaKubba我可不可以做模特课。我想你是问我在控制器中做到这一点。我正确.. – user2770039

+0

要么工作...我主要问你什么问题是... –

回答

0

型号:

function rules(){ 
     ... // Other rules 
     array('service_type','validate_unique_types'), 

} 

public function validate_unique_types($attribute, $params){ 

     if(!empty($this->function_type) && !empty($this->service_type)){ 
      $count = YourModel::model()->count('function_type = :function_type AND service_type = :service_type',array(':function_type'=>$this->function_type, ':service_type'=>$this->service_type)); 
      if($count){ 
       $this->addError($attribute, "repeated!!"); 
      } 
     } 

} 

如果用户输入了“service_tipe”和“函式”中,“validate_unique_types”功能控制,如果存在与这两个值在DB任何REG。

+0

我得到这个错误:类Groupzservicelookup的对象无法转换为字符串 – user2770039

+0

错误行?证实 ? model() - > count()... –

+0

固定...它的工作原理 – user2770039

相关问题