将模型集合转换为id为key的数组

时间:2016-06-12 13:46:11

标签: php arrays laravel

我正在使用Laravel HTML组件创建一个下拉列表,列出用户可以归属的所有组。

组列表来自Groups表。

目前在我的控制器中,我的代码看起来像

    $groups = array();
    $groupModels = Group::all(['id', 'name']);

    foreach ($groupModels as $groupModel) {
        $groups[$groupModel->id] = $groupModel->name;
    }

    return view('myview', compact('groups'));

在我看来,我有以下代码来创建下拉列表

    {!! Form::select('group', $groups, null, ['class' => 'form-control']) !!}

这有效,但我试图看看是否有办法避免foreach循环并直接将模型列表转换为数组。有可能吗?

1 个答案:

答案 0 :(得分:1)

使用pluck()方法:

$groups = Group::pluck('name', 'id');
return view('myview', compact('groups'));