第一个Laravel项目.
我想创建一个从mysql数据库填充的表单下拉列表.我在文档中找到了这个:
Form::select('size', array('L' => 'Large', 'S' => 'Small'))
我试过这个:
{{Form::select('size', array(
@foreach ($suppliers as $supplier)
$supplier->id => $supplier->name
@endforeach
))
}}
但我得到语法错误:
ErrorException in e34a9587ee23853b6d4c489cc0ed13515fad9c06.php line
23: Parse error: syntax error, unexpected ‘<‘, expecting ‘)’ (View:
/var/www/html/project/laravel/leltar/resources/views/invoice.blade.php)
我错了什么?
解决方法:
Pluck从laravel版本5.3返回一个集合,答案是错误的,它不会显示正确的选择框!
这是正确的解决方案!
$suppliers = Supplier::pluck('name', 'id')->toArray();
并在视图中称之为:
{!! Form::select('supplier', $suppliers, null, ['class' => 'form-control']) !!}
更新Laravel 5.5
刚刚测试了这个,在Laravel 5.5中,pluck()可以在不添加toArray()的情况下工作,如下所示:
$tags = Tag::pluck('name', 'id');
或者对于这个问题;
$tags = Supplier::pluck('name', 'id');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。