Коллектив Laravel возвращает значение индекса - PullRequest
0 голосов
/ 12 сентября 2018

Я хочу получить данные из моей формы в контроллере, но вместо значения возвращает ее индекс.Мой взгляд:

{{ Form::open(['route' => 'videos.show']) }}
{!! Form::label('muscle', 'Choose a muscle') !!}
{!! Form::select('muscle', $select, ['class'=>'form-control']) !!}
{{ Form::submit('Filter') }}
{{Form::close()}}

Мой контроллер:

public function showVideos(Request $request){
$muscle = request()->input('muscle');
dd($muscle);
}

1 Ответ

0 голосов
/ 12 сентября 2018

Form::select ожидает ассоциативный массив, содержащий пары значений ключа, где ключ используется для значения выбора, а значение используется для текста. Поскольку вы не добавили никаких ключей, для этого массива используется индекс по умолчанию. Если вы хотите получить строку в своем постбэке, вам нужно будет добавить ее в качестве ключа в вашем массиве.

Например:

$select = []; 
foreach ($subsubvideos as $subsubvideo)
{ 
    if(!$subsubvideo->subSubCategories->isEmpty()) 
    { 
        $select[$subsubvideo->category_name] = $subsubvideo->category_name; 
    } 
}
...