Я работаю с cakephp 2.0.2. Я сохраняю относительно простую ассоциацию моделей. Рабочая модель с привязкой «один ко многим» к изображениям. Я считаю, что проверка этих двух моделей работает непредсказуемым образом.
Когда я делаю сохранение с совершенно верной формой:
$this->Work->saveAll($this->data);
Я могу получить данные, успешно сохраненные, но когда я звоню:
$this->Work->invalidFields();
На самом деле я вижу неудачные проверки правил рабочей модели, хотя форма не должна была их вызывать.
Array
(
[title] => Array
(
[0] => Please enter a title.
)
[copy] => Array
(
[0] => Please enter project copy.
)
)
Экспериментируя с этим дальше. Если я повторно отправлю форму с намеренно оставленным пустым полем заголовка, я получу следующее от моего $this->Work->invalidFields()
звонка:
Array
(
[title] => Array
(
[0] => Please enter a title.
[1] => Please enter a title.
)
)
Итак, по умолчанию кажется, что правило отображается один раз, независимо от того, действительно ли оно неверно или нет. Опять же, если поле действительно недействительно.
Наконец, для потомков, мои простые правила проверки:
public $validate = array(
'title' => array(
'rule' => 'notEmpty',
'required' => true,
'message' => 'Please enter a title.'
),
'copy' => array(
'rule' => 'notEmpty',
'required' => true,
'message' => 'Please enter project copy.'
)
);
Есть идеи по поводу этой странности? Заранее спасибо!