У меня обработан следующий проверочный код для моей модели пользователя.Он хорошо работает при создании пользователя, но не работает при обновлении.Мне известно о 'on' => 'create'
, но я хочу, чтобы правило также применялось и во время редактирования.Я разрешаю пользователю изменить свое имя пользователя, но если то, на что его изменяет пользователь, уже находится в Db, то в представлении должно быть отказано.
var $validate = array(
'username' => array(
'alphaNumeric' => array(
'rule' => 'alphaNumeric',
'message' => 'Usa letras ou numeros como o teu << Usuario >>',
),
'between' => array(
'rule' => array('between' , 5, 15),
'message' => 'O << Usuario >> tens que ter entre 5 a 15 letras/numeros',
),
'isUnique' => array(
'rule' => 'isUnique',
'message' => 'O << Usuario >> que escolhestes ja foi utilizado. Escolhe um outro.'
)
)
);
Поскольку пользователю необходимо войти в систему, чтобы достичьОтредактируйте страницу, можно ли создать пользовательское правило проверки для:
- Проверьте, принадлежит ли введенное имя пользователя Auth-> User ('id') и отправлено ли оно нормально
- Однако, если представляемое имя пользователя отличается от Auth-> User ('username'), мы должны проверить, не имеет ли это имя пользователя никто другой.
- И если Auth-> User () имеет значение NULL, обработайтеisUnique как обычно, так как это применимо только при создании нового пользователя.
Спасибо
check