У меня возникла проблема в Laravel 4.2 с фасадом формы при использовании входных имен, представляющих многомерные массивы. Форма будет правильно загружать, отображать и публиковать данные, если в Input::old() не установлены значения (из-за неудачной проверки и т. д.).
Вот простой пример, показывающий проблему:
маршруты.php:
Route::get('input-test', function() {
return View::make('input_test.index');
});
Route::post('input-test', function() {
return Redirect::back()->withInput(Input::all());
});
input_test/index.blade.php:
<!doctype html>
<html>
<head>
<title>Input Array Test</title>
</head>
<body>
{{ Form::open(array('url' => 'input-test')) }}
{{ Form::label('customer[some_customer_field][]', 'Customer Field:') }} <br>
{{ Form::text('customer[some_customer_field][]', null) }}
{{ Form::submit('Submit') }}
{{ Form::close() }}
</body>
</html>
Отправка этой формы вызовет ошибку:
htmlentities() expects parameter 1 to be string, array given
Есть ли способ заставить входные данные с этими типами имен работать с обратной передачей?