php – Laravel-5如何使用id值和名称值填充数据库中的选择框
发布时间:2020-12-14 19:49:39 所属栏目:大数据 来源:网络整理
导读:我想使用 illuminatehtml创建一个类似下面的选择框: select option value="$item-id"$item-name/option option value="$item-id"$item-name/option/select 在我的控制器中我尝试了这个: public function create(){ $items = Items::all(['id','name']); r
我想使用
illuminatehtml创建一个类似下面的选择框:
<select> <option value="$item->id">$item->name</option> <option value="$item->id">$item->name</option> </select> 在我的控制器中我尝试了这个: public function create() { $items = Items::all(['id','name']); return view('prices.create',compact('id','items')); } 在我看来这个: <div class="form-group"> {!! Form::Label('item','Item:') !!} {!! Form::select('item_id',$items,null,['class' => 'form-control']) !!} </div> 问题是,而不是$item-> name显示实体的所有信息.
Laravel为查询生成器提供了lists()函数
在您的情况下,您可以替换您的代码 $items = Items::all(['id','name']); 同 $items = Items::lists('name','id'); 此外,您还可以将其与其他查询生成器链接. $items = Items::where('active',true)->orderBy('name')->lists('name','id'); 来源:http://laravel.com/docs/5.0/queries#selects Laravel 5.2的更新 非常感谢@jarry.正如您所提到的,Laravel 5.2的功能应该是 $items = Items::pluck('name','id'); 要么 $items = Items::where('active',true)->orderBy('name')->pluck('name','id'); 参考:https://laravel.com/docs/5.2/upgrade#upgrade-5.2.0 – 查看Deprecations列表 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |