Как проверить ввод поля выбора в Laravel4
В настоящее время, когда я хочу проверить поле выбора, мне нужно включить все значения в поле проверки.
public static $rules = array(
'type' => array('required', 'in:a,b,c,d')
);
есть ли лучший способ сделать это с помощью массива?
например: У меня есть длинный список названий стран и я хочу включить его в список проверки. Хакерский способ сделать это будет что-то вроде:
public static $rules = array(
'type' => array('required', 'in:'.implode(',', $countries))
);
спасибо
2 ответов
возможен пользовательский, но правило exist также может выполнять эту работу. Подробнее оhttp://laravel.com/docs/validation#rule-exists
создать меню выбора с массивом, как так:
$types = [ '' => 'select a type',
'one' => 'type one',
'a' => 'type a' ];
и правила для проверки вот так:
$rules = ['type' => 'required'];
поскольку первый ключ $types является пустой строкой. Вывод такой:
<option value=''>select a type</option>
при проверке требуемое правило не пройдет проверку.
предполагая, что все параметры в меню выбора являются допустимые варианты.