我正在使用Laravel 5.3和Twig模板引擎(Not Blade)。我想在表单中生成一个下拉列表列表。而不是只显示值。它也显示了键。
例如:
{"display_name":"Admin"}
在我看来,代码是
{{ form_select('roles', roles, input_get('role'), {id:'user_type',class:'form-control'}) }}
在控制器中
public function create()
{
$roles = Role::all('display_name');
return view('users.user-add')->with(['roles' => $roles]);
}
我错过了什么?
答案 0 :(得分:1)
我建议你为此创建一个帮助程序,这样就不需要将角色从每个控制器传递到每个视图。创建一个这样的辅助函数:
if(!function_exists('getRoles'))
{
function getRoles()
{
$roles = Role::get();
foreach ($roles as $role)
{
$results[$role->id] = $role->name;
}
return $results;
}
}
现在在你的模板中执行:
{{ form_select('roles', getRoles(), input_get('role'), {id:'user_type',class:'form-control'}) }}
我希望我能按照预期理解你的问题,这有助于你达到你想要的目标。