2017-08-27 15 views
0

マルチセレクションで選択したアイテムを表示する際に問題があります。ララールフォームビルダマルチセレクション選択アイテム

<div class="col-lg-4 col-md-4 form-group"> 
    {!! Form::label('subcategories', trans('art-work.subcategory'), ['class' => 'control-label']) !!} 
    {!! Form::select('subcategories[]', $subcategories, $_subcategories, 
     [ 
      'id' => 'subcategories', 
      'class' => 'form-control select2', 
      'multiple' => 'multiple', 
      'data-placeholder' => trans('crud.choose'), 
    ]) !!} 
</div> 
.... 
{{ Log::info('subcategories', $_subcategories) }} 

'はindex.blade.php' エンティティ・ビュー内

サブビュー断片、フォーム入力、いくつかのマルチ選択のいずれかを 'filter.blade.php' サブビューを持ちますフィルタフォームがコントローラに送信され、「_subcategories」のような変数を持つビューを翔、図示されるように、結果

public function filter(Request $request) 
{ 
    $this->validate($request, $this->filterRules); 
    $filters = [ 
     'category_id'  => (int) $request->category_id, 
     'subcategories' => $request->subcategories, 
     'grades'   => $request->grades, 
     'students'  => $request->students, 
     'professors'  => $request->professors, 
    ]; 

    $works = ArtWork::filtered($filters); 
    $subcategories = Category::where('category_id', $filters['category_id']) 
     ->get() 
     ->pluck('title', 'id') 
     ->toArray(); 

    return view('panel.art-work.index', [ 
     'works'   => $works, 
     'subcategories' => $subcategories, 

     '_category'  => $filters['category_id'], 
     '_subcategories' => $filters['subcategories'], 
     '_grades'   => $filters['grades'], 
     '_students'  => $filters['students'], 
     '_professors'  => $filters['professors'], 

     '_filter'   => true, 
    ]); 
} 

をフィルタリングするように要求からの入力を処理するコントローラのアクション、 uldはマルチセレクトの要求からidsを選択します。しかし何も選択されていない。

http://joxi.ru/82QeLzDi135Xy2

それは奇妙であると私は立ち往生...

おかげ

答えて

0

私の作業溶液は次のとおりです。(私の場合はID)各オプションの値を文字列化

。 HTMLで

、代わりにそう

<select> 
     <option value="d1">First</option> 
     <option value="d2">Second</option> 
     ... 
     <option value="dn">Nth</option> 

<select> 

のようなものでなければなりません

<select> 
    <option value="1">First</option> 
    <option value="2">Second</option> 
    ... 
    <option value="n">Nth</option> 

<select> 

の、マルチ選択フォームビルダのためのキーと値のペアを持つ配列を渡す前に、私は例えば、文字を追加しましたが、 'd'を値にする。

選択したアイテムを送信した後、このデータを処理する前にすべての値をクリアして文字を削除します。

関連する問題