我正在尝试将数组从Controller传递到类似的视图:
控制器
public function newUser()
{
$company = Company::all();
$list = array();
foreach ($company as $companies)
{
$list[] = '<option value="'.$companies->id.'">'. $companies->name.'</option>';
}
return view('auth.register')->with($list);
}
查看
<select class="form-control" name="company">
{{$list}}
</select>
导致Undefined variable: list
我也尝试了return view('auth.register')->with('companies', $list);
哪个会产生htmlentities() expects parameter 1 to be string, array given
我没有使用表单构建器,我自己创建了所有HTML。
答案 0 :(得分:0)
我通过这样做解决了这个问题。
控制器
public function newUser()
{
$company = Company::all();
$list = array();
foreach ($company as $companies)
{
$list[$companies->id] = $companies->name;
}
return view('auth.register')->with('list', $list);
}
查看
<select class="form-control" name="company">
@foreach($list as $key=> $value)
<option value="{{ $key }}">{{ $value }}</option>
@endforeach
</select>
答案 1 :(得分:0)
这样做很容易:
<强>控制器:强>
public function newUser()
{
$companies = Company::lists('name', 'id');
return view('auth.register', compact('companies'));
}
查看:强>
{!! Form::select('company', $companies, null) !!}
非常干净,非常简单。