关于 Pluck 结果的问题 Laravel 5.7

Question About Pluck Results in Laravel 5.7

我对 Laravel 中的 pluck 方法有疑问。如何在列表中获得以下结果?

Name + Lastname + id

我在控制器中使用这一行命令

行:$choferes

public function index()
{
    $asignaciones = Asignacion::orderBy('id', 'ASC')->get();
    $choferes = Chofer::orderBy('id', 'ASC')->pluck('nombre', 'id');
    $dueños = Dueño::orderBy('id', 'ASC')->pluck('nombre', 'id');
    $asignaciones->each(function ($asignaciones)
    {
        $asignaciones->chofer;
        $asignaciones->dueno;
    });

    return view('admin.asignaciones.index')
        ->with('asignaciones', $asignaciones)
        ->with('choferes', $choferes)
        ->with('dueños', $dueños);
}

列表中的结果:

1 => "name 1"
2 => "name 2"

但是,我需要合并:namelastname。它需要是一个列表。如何在我的视图中显示它?

<div class="col-xs-6">
    {!! Form::label('chofer_id','Lista de Choferes') !!}
    {!! Form::select('chofer_id[]', $choferes, null,
        ['class'=>'form-control select_chofer',
        'multiple',
        'required','id'=>'list_chofer']) !!}
</div>

我有这个结果:

result

谢谢!

在您的 Chofer 模型中定义

public funcion getFullNameAttribute()
{
    return $this->attributes['first_name'] + ' ' + $this->attributes['last_name'];
}  

在控制器中使用这个

$choferes = Chofer::orderBy('id', 'ASC')->get(['id`, ...])->pluck('full_name', 'id');