Выбранный ответ правильный, но не дает объяснений.
Проблема заключается в том, что вы создаете свою форму LaravelCollective :: select, чтобы в следующем запросе было отправлено целое число id
. Вы можете убедиться в этом, просмотрев источник элемента Form в HTML-файле вашего рендеринга. В настоящее время это будет выглядеть так:
<select class="form-control" name="nombre_dep">
<option selected="selected" value="">Asignar departamento</option>
<option value="1">Production</option>
<option value="2">Department 2</option>
<option value="3">Department 3</option>
</select>
поэтому, когда действие запускается с (скажем) выбранной опцией 1, ваш сгенерированный запрос просто имеет "nombre_dep" => "1"
.
Вам необходимо структурировать форму с желаемым значением параметра. как
<select class="form-control" name="nombre_dep">
<option selected="selected" value="">Asignar departamento</option>
<option value="Production">Production</option>
<option value="Department 2">Department 2</option>
<option value="Department 3">Department 3</option>
</select>
Для этого передайте переменную $departamentos
из вашего контроллера следующим образом:
$departamentos = array('Production' => 'Production', 'Department 2' => 'Department 2', 'Department 3' => 'Department 3');
и простой способ сделать это (в ответе https://stackoverflow.com/a/56673741/8093282 указано):
$departamentos = departamento::pluck('nombre_dep', 'nombre_dep');