Просмотр регистра из laravel не показывает и не распознает переменную из моего контроллера Laravel 6.0 - PullRequest
0 голосов
/ 07 января 2020

У меня есть выбор, который показывает информацию, которую я хочу выбрать, представление является регистром из laravel, но я добавил другие формы, форму с методом POST, которая имеет селектор не распознает переменную из контроллера, я сделал то же самое в моих собственных представлениях и работает, я не знаю, почему не работает в представлении регистра из Laravel, пробовал, но не работало

  • Ниже я позволю код моего маршрута, мой index function(), мой create function() и мой выбор
  • У меня есть эта ошибка Undefined variable: empleado, повторение происходит только с регистром от Laravel
  • Я хочу, чтобы человек увидел варианты выбора и выбрал один, а затем сохранил его в своей базе данных

Маршрут

Route::resource('/empleado', 'EmpleadoController');

* index function()*

public function index()
    {   
        return view('home.home2');
    }

* store function() *

public function create()
    {   
        $empleado = DB::select( DB::raw("SELECT 
                                        nombre_cargo,id_cargo
                                        FROM cargo"
                                        ));
        return view('auth.register')->with('empleado',$empleado);
    }

* <select>*

<form method="POST" action="/empleado">
<div class="form-group row">
                <label for="country" class="col-md-5 col-form-label text-md-right tamano">Cargo</label>
                <div class="select-wrap col-md-7">
              <select name="fk_cargo" id="" class="form-control tamano">
                  @foreach ($empleado as $item)
                    <option value="{{$item->id_cargo}}">{{$item->nombre_cargo}}</option>
                  @endforeach
              </select>
            </div>
</form>

Ответы [ 2 ]

0 голосов
/ 07 января 2020

Это ваша функция создания . Я бы рекомендовал использовать метод Laravel magi c при передаче переменных в представление как всегда простое:

    public function create()
            {   
                $empleado = DB::table('cargo')->select('nombre_cargo','id_cargo')->get();
                return view('auth.register',[
    'empleado'=>$empleado
]);
            }
0 голосов
/ 07 января 2020

Вы можете использовать таблицу построителя запросов и метод get для получения результатов.

Попробуйте использовать этот код ниже.

public function create()
{   
   $empleado = DB::table('cargo')->select('nombre_cargo','id_cargo')->get();
   return view('auth.register', compact('empleado'));
} 

Ознакомьтесь с этой документацией с laravel

...