2017-11-03 9 views
2

だから私の時間がかかり、そんなに疲れてしまいました。Laravel Forms適切な構文

<select> 
    @foreach($items as $item) 
    <option value="{{$item->name}}">{{$item->name}}</option> 
    @endforeach 
    </select> 

私はこの例では大丈夫です。私はドロップダウンリストで項目を取得できることを意味します。しかし!私がラヴェルの形でそれをやろうとすると、同じことはできません!私は最終的に私はこれを取得laravel

の形の内部
<div class="form-group"> 
    @foreach($items as $item) 
    {!! Form::select('name', [$item->name => $item->name]) !!} 
    @endforeach 
</div> 

をforeachループを配置カント... difference

https://pasteboard.co/GRYceaG.png

私は私が選択した後、このforeachループを配置する必要があることを知っています{!! Form::select('name',では、私はそれを行うことができません!この馬鹿げた問題について私を助けてください。

答えて

2

Form::selectは、<select>を作成します。したがって、すべての反復で<select>を作成します。

$optionsは、自分の価値観を持つ配列である
{!! Form::select('name', $options) !!} 

:代わりに、あなたがする必要があります。この配列はコントローラ内に作成できます。例えば

は、あなたがpluckコレクションからフィールドを必要とselect()に結果の配列渡すことができます。

$options = $user->items()->pluck('name'); 

{!! Form::select('name', $options) !!} 
+0

は例をここに参照してください。https://laravelcollective.com/docs/5.4/html#drop-downを-lists – Jeffrey

+0

私はこの配列を$ items = $ user-> items() - > get()としています。 しかし、私はすべての項目の名前を取る必要がありますが、そのビューでは動作しません.. –

+0

私はこれらの例のすべてをチェックして、ちょうど私はこの事に私は通常のHTML形式で行うことができますが、 laravel form ...彼らは同じではいけませんか? –