Cake PHP - проверка формы не работает - PullRequest
0 голосов
/ 02 февраля 2010

my CakePHP (1.2.5.) Не подтверждает правильность моей формы.

 $this->UserData->save($this->data);

всегда возвращает мне истинное значение. Я не могу найти проблему. Метка для UserData.nichname работает.

Это вид:

<?php
echo $form->create('UserData');
echo $form->error('UserData.nick_name');
echo $form->input('UserData.nick_name', array('id' => 'UserDatanick_name', 'rule' => 'alphaNumeric', 'label' =>'Nickname:', 'error' =>'false'));
echo $form->end( array( 'label' => ' Save ') );
?>

Вот мой контроллер:

class UserDatasController extends AppController {
  var $name = 'UserDatas';
  function add(){
     if (!empty ($this->data)){
         $this->UserData->create();
         if ($this->UserData->save($this->data)){
             $this->Session->setFlash('input is valid');
         } else {
             $this->Session->setFlash('input is not valid');
         }
     }
  }
}

Правила для не в модели, это причина, по которой я не публикую это.

Что еще нужно для проверки?

Заранее спасибо Стив

Ответы [ 3 ]

1 голос
/ 02 февраля 2010

Правила проверки должны быть определены в модели, а не в представлении, см. Также главу о проверке данных в книге тортов.

0 голосов
/ 03 февраля 2010

^^ также проверьте, как называются ваши файлы.Вы назвали файл модели user_data.php, верно?и ваш контроллер user_data_controller.php?

Обратите внимание на подчеркивание из-за вашего CamelCasing.Если вы неправильно укажете имя файла модели, он не будет жаловаться, а вместо этого будет использовать магическую модель по умолчанию - возможно, именно поэтому ваши правила проверки в модели не были выбраны.

0 голосов
/ 02 февраля 2010

Полагаю, вы указываете только правила в модели, но метка будет сохранена в функции $ form-> input ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...