Запрос возврата NULL в выпадающем списке выберите - PullRequest
0 голосов
/ 13 мая 2019

Я хочу сохранить warehouse_id в моей базе данных, но когда я dd($request->all()) в моем контроллере после отправки формы, warehouse_id возвращает NULL

Это код моего контроллера:

public function receivedAll(Request $request, ItemPR $item_code)
{

    $item_code      = $request->item_code;
    $pr_qty         = $request->pr_qty;
    $warehouse_id   = $request->warehouse_id;
    dd($request->all());

}

Это мой шаблон файла лезвия:

<form enctype="multipart/form-data" role="form" method="POST" action="{{route('inventory.receivedAll') }}">
    {{ csrf_field() }}
    <div class="form-group">
        <label for="input-warehouse_id">Warehouse List</label>

        <div class="form-group">
            <select class="custom-select" name="warehouse_id" id="input-warehouse_id">
                <option value="">Select Warehouse</option>
                @foreach($warehouse as $data)
                    <option value="{{$data->id}}">{{$data->name}}</option>
                @endforeach
            </select>
        </div>
    </div>
</form>

Вы можете видеть, что он возвращает ноль ...

enter image description here

warehouse_id уже сделано заполняемым в моей модели, но продолжает возвращаться NULL, пожалуйста, помогите мне исправить этот код.

Спасибо.

1 Ответ

0 голосов
/ 14 мая 2019

Если ваш контроллер получает NULL, это потому, что он передается NULL от внешнего интерфейса.

В качестве теста вы можете заменить <option value="{{$data->id}}"> на <option value="TEST"> и затем отправить форму. Если ваш warehouse_id сейчас TEST, значит, проблема с вашей переменной $warehouse в том, что она не содержит свойства id.

Это потому, что ваш запрос:

$warehouse = Warehouse::select('name')->get();

Поскольку вы выбираете только name, в вашем шаблоне Eloquent отсутствует свойство id для доступа к вашей модели Eloquent. Вы должны включить любое свойство, к которому хотите получить доступ, в метод select, например;

$warehouse = Warehouse::select('id', 'name')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...