Ошибка обновления ролей

У меня проблема с одним из моих проектов, и как только я пытаюсь обновить роль, я получаю следующую ошибку.

Значение в «Имя роли» уже используется.

Когда я редактирую / обновляю роль, имя роли не должно проверяться. Почему это происходит?

Я посмотрел на контроллер и код модели, и он просто использует обычный код.

контроллер:

if ($type == 'insert') {
$id = $this->role_model->insert($data);
$return = is_numeric($id);
} elseif ($type == 'update') {
$return = $this->role_model->update($id, $data);
}

Модель:

public function update($id = null, $data = null)
{
// If this role is set to default, then set all others to NOT be default.
if (isset($data['default']) && $data['default'] == 1) {
$this->db->set('default', 0)
->update($this->table_name);
}

return parent::update($id, $data);
}

0

Решение

Изменены правила валидации в соответствии с предложением Кисараги

protected $updateValidationRules = array(
array(
'field' => 'role_name',
'label' => 'lang:role_name',
'rules' => 'required|trim|max_length[60]|unique[roles.role_name,roles.role_id]',
),
);

в

protected $updateValidationRules = array(
array(
'field' => 'role_name',
'label' => 'lang:role_name',
'rules' => 'required|trim|max_length[60]|',
),
);

Большое спасибо.

0

Другие решения

Других решений пока нет …