установить значение по умолчанию для поля выбора в Laravel с помощью конструктора коллективных форм?

У меня есть поле выбора в моей форме для выбора ролей администратора. Мне нужно установить значение по умолчанию для этого поля выбора, например «Выбрать роль». Я использую Laravel 5.2 и коллективный класс конструктора форм. Вот мой код

{!! Form::select('role_id',App\Role::orderBy('name')->lists('label','id'),$roleId,array('class'=>'form-control col-md-7 col-xs-12','id'=>'role_id')) !!}

person Sandeep Bhaskaran    schedule 07.08.2016    source источник


Ответы (1)


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

Если это не сработает, вы должны проверить, что содержит $roleId, а также изучить HTML, созданный с помощью предложения Form::select, чтобы найти проблему.

Обновить

Чтобы добавить Select Role значение по умолчанию, сделайте это перед предложением Form::select:

<?php
    $rolesList = App\Role::orderBy('name')->lists('label','id');
    $rolesList[0] = 'Select Role';
    ksort($rolesList); // Will resort list.
?>
person Alexey Mezenin    schedule 07.08.2016
comment
Здесь $ roleId имеет значение null в случае ma, но у меня нет массива с нулевым значением в этом списке - person Sandeep Bhaskaran; 07.08.2016
comment
<select id="role_id" class="form-control col-md-7 col-xs-12" name="role_id"> <option value="2">Admin</option> <option value="1">Super Admin</option> </select> это мой HTML - person Sandeep Bhaskaran; 07.08.2016
comment
Итак, вы должны проверить, почему оно равно нулю. Или вы можете использовать значение по умолчанию для $roleId. Например, если вы хотите, чтобы ID роли по умолчанию был 1, вы можете изменить $roleId на $roleId or 1 или на $roleId ? $roleId : 1 - person Alexey Mezenin; 07.08.2016
comment
Он работает правильно. На самом деле мне нужно значение по умолчанию, например `‹ option value = 0 ›Select Role ‹/option› ' - person Sandeep Bhaskaran; 07.08.2016