Для моего удобства я создал компонент, в котором есть выпадающий список. Так что я могу использовать его везде, когда мне это нужно. Это компонент
<h5>{{$title}}</h5>
<select class="select" {{$required_district}} name="{{$select_district}}" id="{{$select_district}}">
<option value="" selected> {{ __('Select the district') }} </option>
@foreach($districts as $district)
<option value="{{ $district->id }}"
{{ old($select_district) && $district->id == old($select_district) ? 'selected' : '' }}>
{{ $district->name_en }}</option>
@endforeach
</select>
@error($select_district)
<label class="text-danger" style="">{{$message}}</label>
@enderror
То, что я здесь делаю, это заголовок, идентификатор входного поля и другие вещи, которые динамически создаются с помощью @slot (), как показано ниже
@component('destrict')
@slot('title')
Where do you want a job to be started
@endslot
@slot('select_district')
selected_district
@endslot
@slot('required_district')
required
@endslot
@endcomponent
Хорошо работают хорошо, но когда я отправляю форму, которая содержит этот компонент, когда проверка не проходит, тогда генерируется следующая ошибка:
array_key_exists (): первый аргумент должен быть либо строкой, либо целым числом
Проблема возникает с этой строкой, когда перенаправление формы обратно с ошибками проверки
{{ old($select_district) && $district->id == old($select_district) ? 'selected' : '' }}
Если я удаляю {{ old($select_district) }}
или просто использую его как {{ old('name_here') }}
, тогда все работает так, как должно быть . Но так как мне нужно использовать этот компонент на нескольких страницах, я бы хотел решить эту проблему. Так может кто-нибудь, пожалуйста, помогите мне исправить это.