CakePHP - переключатель не отображает сообщение об ошибке - PullRequest
4 голосов
/ 05 мая 2010

Мне не удается отобразить сообщение об ошибке при создании формы радио с помощью помощника формы CakePHP.

Это то, что у меня сейчас есть.

     $options=array('active'=>'Active','inactive'=>'Inactive');
     echo $form->input('Status', array(
  'type' => 'radio',
  'id' => 'EntryStatus',
  'name' => 'data[Entry][status]',
  'options' => $options

));

Что мне не хватает?
Я использую CakePHP 1.2.7, и это то, что у меня есть в проверке

'status' => array(
    'notempty' => array(
         'rule' => 'notempty',
         'required' => true,
         'message' => 'yo'
         )
    )

Попробовал ответ от Помощник по формам для создания переключателя в Cakephp , и вместо этого он дает мне форму выбора.

Спасибо
Тройник

Ответы [ 6 ]

4 голосов
/ 01 февраля 2011

была такая же проблема, и я нашел это, и это работает:

http://book.cakephp.org/view/204/Form-Element-Specific-Methods

вам нужно

if ($form->isFieldError('gender')){
    echo $form->error('gender');
}

... в вашем коде. это работает, если ваше поле называется пол.

2 голосов
/ 16 августа 2010

У меня была такая же проблема, и я добавил:

<?php echo $form->error('currentStatus');?>

под переключателем, и все работало нормально.

1 голос
/ 05 мая 2010

Попробуйте взглянуть на $ form-> input ('Status' ... (заглавная 'Status') в сравнении с именем столбца БД (которое может или не может быть написано с заглавной буквы по сравнению с 'name' => 'data [Entry] [status] '(не прописной' status ').

Помощник формы Cake требователен к вставке сообщений об ошибках, когда не может понять, что к чему.

0 голосов
/ 18 мая 2016

Необходимо добавить условие ошибки в случае переключателя

<?php 
    $options=array('active'=>'Active','inactive'=>'Inactive');
    echo $form->input('Status', array(
      'type' => 'radio',
      'id' => 'EntryStatus',
      'options' => $options
    )
    );
    if ($form->isFieldError('Status')){
        echo $form->error('Status');
    }
    ?>
0 голосов
/ 13 мая 2010

Вам нужно вручную добавить в форму ошибки помощник.

echo $ form-> error ('status');

0 голосов
/ 05 мая 2010

Вы пытались использовать явный метод $ form-> radio () вместо общего метода input ()?

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