我有一个名为'types'的表格,字段为> id,name,...
我想要一个选择框只显示name属性,所以我做>
1-从DataBase获取信息>
$types= Type::all();
并使用return语句将其传递给视图。
return View::make('clients')-> with('types',$types);
2-我创建了像这样选择>
{{ Form::select('myTypes',$types) }}
但当然我从$ types获得所有值,而不仅仅是名字。对于选择框中的每一行,这样的事情......:
{"id":1,"name":"name1", ....}
为了解决这个问题,我尝试了这个:
{{ Form::select('myTypes',$types->name) }}
但这会让我产生错误。
非常欢迎任何帮助!
答案 0 :(得分:2)
选择时,请使用lists
方法。
$types= Type::all()->lists('name', 'id');
这将返回一个为选择列表格式正确的数组,key是id,name是您要返回的每条记录的值。
此外,您可以使用make()
的第二个参数将变量传递到视图而不是with()
return View::make('clients', array('types' => $types));
然后,视图中的选择列表......
{{ Form::select('myTypes',$types) }}