我正在使用Yii框架,我的表中有3个字段,名为Table_Details,字段是table_number,seat和admin_id。我想为每个admin_id输入一个唯一的table_number。如果我对字段table_number使用唯一验证,那么它将在表中只插入一次table_number,但我想为每个admin_id唯一地插入table_number。
答案 0 :(得分:1)
您可以定义自己的规则。即。
public function rules()
{
return array(
array('table_number', 'uniqueTable', "on" => "insert"),
);
}
在模型中定义uniqueTable
函数:
public function uniqueTable($attribute,$params)
{
$record=TableDetail::model()->findByAttributes(array('table_name'=>$this->table_name, "admin_id" => Yii::app->user->id));
if(count($record) > 0){
$this->addError($attribute, 'You already have a table with this name');
}
}