Как добавить опцию «Выбрать один» в селектор со списком, а затем проверить ее в CakePHP?
-
03-07-2019 - |
Вопрос
Я новичок в Cake PHP.
Я хочу отредактировать таблицу «Проблема».Эта таблица содержит поле «priority_id», связанное с другой таблицей «Priority» внешним ключом.Эта таблица содержит три значения «Серьезное», «Катастрофа», «Задачи».Пользователь может выбрать приоритет с помощью поля со списком (выбор входа).
Приоритеты загружаются следующим образом:
$priorities = $this->Issue->Priority->find('list');
Это работает для меня.
Мне нужно добавить четвертый вариант в поле со списком под названием «Выбрать».Это значение будет значением по умолчанию.Пользователь не может отправить форму, если выбрано это значение.Мотивация состоит в том, чтобы заставить пользователя выбрать одно из значимых значений вместо того, чтобы отправлять первое случайно.
1) Как заполнить массив $priorities?2) Как я могу проверить форму?
Спасибо
Решение
В представлениях Issue/add.ctp и Issues/edit.ctp добавьте пустой ключ в массив параметров, отправленный в качестве второго параметра в метод $form->input(), например:
echo $form->input('priority_id', array('empty' => 'Choose'));
Это добавит опцию вверху поля со списком с текстом «Выбрать», и значением опции будет пустая строка.
В вашей модели проблемы вы можете добавить проверку поля Priority_id, например.
var $validate = array(
'priority_id' => array('numeric')
);