Laravel: Select2 选项值

Laravel: Select2 option value

我认为有以下代码:

{!! Form::select(   'projectSkills', 
                    ['' => ''] + \App\Skill::where('type','freelancer')
                                ->pluck('name', 'id')
                                ->toArray(), 
                    @$skills, 
                    [
                      'class' => 'select2',
                      'multiple'=>'multiple'
                    ]
                  ) !!}

其中选项的值为 0,1,2,3,4,5

我想要 name 的值,它是从 table 中获取的。

我哪里做错了?

您正在制作一个包含以下内容的列表:[id => name] 通过调用 pluck('name','id')

这将被送入形成下拉列表的表单中:

<option value="id">name</option>

如果您想更改 'value' 部分,您需要提供一个包含正确值部分的数组。

您可以 pluck('name','name'); 将您想要的值输入到表单中。

如果您查看 the documentation of the method pluck,您会发现第二个参数用于将要返回的数组的 'key' 部分。