如何在laravel的blade中使用带数组的optgroup
如何在laravel 5.3中的blade中使用带有数组的optgroup 我在我的项目中使用 例如:如何在laravel的blade中使用带数组的optgroup,laravel,laravel-5.3,laravel-blade,Laravel,Laravel 5.3,Laravel Blade,如何在laravel 5.3中的blade中使用带有数组的optgroup 我在我的项目中使用 例如: <select class="form-control select2"> <optgroup label="Top Airport"> <option value="MHD">Mashhad</option> <option value="THR">Tehran</option> </opt
<select class="form-control select2">
<optgroup label="Top Airport">
<option value="MHD">Mashhad</option>
<option value="THR">Tehran</option>
</optgroup>
<optgroup label="All Airport">
<option value="MHD">Mashhad</option>
<option value="THR">Tehran</option>
<option value="LON">London</option>
.
.
.
</optgroup>
</select>
在index.blade.php
中:
{{ Form::select('from', ['Top Airport' => ['MHD', 'Mashhad', 'THR' => 'Tehran'], 'All Airport' => $airport], null, ['class' => 'form-control select2']) }}
pluck
方法返回Collection
的实例,而Form::select()
需要一个数组。您可以在Pull上链接toArray()
方法以使其工作
$airport = Airport::where('status', 1)->pluck('city', 'iata')->toArray();
或者更好,如果您使用的是PHP7,则使用coalescing操作符。它永远不会失败,即使数据库中没有活动的机场,当它尝试将null转换为数组时,toArray()
经常发生这种情况
$airport = Airport::where('status', 1)->pluck('city', 'iata')->toArray() ?? [];
有什么问题吗?Form::select()是否没有提供预期的输出?
$airport = Airport::where('status', 1)->pluck('city', 'iata')->toArray() ?? [];