Уникальный файл в соответствии с идентификатором администратора в yii

Я использую структуру Yii, и у меня есть 3 поля в моей таблице с именем Table_Details, а поля — это table_number, seats и admin_id. Я хочу ввести уникальный table_number для каждого admin_id. Если я использую уникальную проверку для поля table_number, тогда он будет вставлять только table_number один раз в таблице, но я хочу вставить table_number уникально для каждого admin_id.


person Happy    schedule 13.05.2013    source источник


Ответы (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');
    }
}
person Preetam    schedule 13.05.2013