Коллективная форма Laravel и цикл foreach

Я хочу связать свою раскрывающуюся форму выбора с базой данных, в настоящее время у меня есть что-то вроде этого:

                 @foreach( $clients as $client)
                    {!! Form::select('connected_with',
                     ['name' => $client->name . $client->surname
                      ]) !!}
                    @endforeach

А это мой контроллер:

        $clients = Client::all();

        return view('report_create')->with('clients', $clients);

и я получаю много полей. Я хочу только один с элементами из БД. Как это сделать?


person Bartosz Rowiński    schedule 06.07.2017    source источник


Ответы (1)


Если вы хотите создать список избранных клиентов, используйте pluck():

$clients = Client::pluck('full_name', 'id');
return view('report_create')->with('clients', $clients);

Чтобы это работало, вам также необходимо определить метод доступа в модели Client:

public function getFullNameAttribute()
{
    return $this->name.' '.$this->surname;
}

Затем просто создайте список:

{!! Form::select('connected_with', $clients) !!}
person Alexey Mezenin    schedule 06.07.2017