Я использую cakephp 2.0, и у меня возникли проблемы с проверкой Cake, которая прекрасно работает, когда используется только для нее.
var $validate = array(
'loginname' => array(
'minCharactersRule' => array(
'rule' => array('minLength', 3),
'required' => true,
'allowEmpty' => false,
'on' => 'create',
),
'alphaNumericRule' => array(
'rule' => 'alphaNumeric',
),
'uniqueRule' => array(
'rule' => 'isUnique',
),
),
'password' => array(
'minCharactersRule' => array(
'rule' => array('minLength', 5),
'required' => true,
'allowEmpty' => false,
),
// on so on ...
Из-за Интернализации я выводил сообщения об ошибках в виде:
echo $this->Form->input('display_name', array(
// some other options ...
'error' => array(
'betweenRule' => __('Your Dispay Name must contain at least 3 characters and should be maximal 20 characters long.'),
'uniqueRule' => __('This Display Name is already in use!'),
),
);
Теперь я хочу, чтобы jQuery проверил форму и на стороне клиента, с помощью небольшого - сексуального окна сообщения, возвращающего ошибки проверки, если что-то пойдет не так.
Ajax-запрос работает нормально, но проблема в следующем: мне возвращается только имя правила проверки, а не сообщение.
конечно: потому что я не указал никаких сообщений в модели.
Но как я могу получить те сообщения, которые я объявил в представлении?
Есть ли какое-либо решение без необходимости вводить все дважды (PHP и JS)?