2017-05-07 9 views
2

名前を超える名前を表示するにはどうすればよいですか? key => valueメソッドを選択して使用します(ここではidを使用します)。ここでは、表示する列(last_name、paygradeなど)はどこに書きますか? 私は雄弁な大会を引き続き使用し、選択されたオプションに関する詳細を表示したいと思います。Laravel Pluck - 複数のフィールドを取得する方法

コントローラ

$users = User::select('id', 'first_name')->pluck('first_name', 'id');

ブレイド {!! Form::select('worker_id', $users, isset($users) ? $users : null, array('class' => 'form-control chosen-select', 'data-placeholder'=> 'Worker...', 'multiple' => 'multiple')) !!}

+0

なぜあなたはここで「抜け」が必要だと思いますか? –

答えて

4

あなたがこれを使用することができます:

$users = User::selectRaw('id, CONCAT(first_name," ",last_name) as full_name')->pluck('full_name', 'id'); 

またはこれを:

$users = User::select('id', DB::raw("concat(first_name, ' ', last_name) as full_name")->pluck('full_name', 'id'); 
+0

これはまさに私が探していたものです。あなたのコードは雄弁ではありません。変更してください。私は答えとして投票します。 '$ users = User :: selectRaw( 'id、CONCAT(first_name、"、last_name)full_name') - > pluck( 'full_name'、 'id'); ' – DudeOfLayers

+0

** concat **を使うことができます** DB :: raw()**のようにrawで** eloquent **のように残りのコード** – MohamedSabil83

+0

私が書いたものにあなたの答えを編集してください。 – DudeOfLayers

関連する問題