Forms 如何从我的数据库中检索选择选项

Forms 如何从我的数据库中检索选择选项,forms,select,laravel-5,Forms,Select,Laravel 5,我试图从3个数据库中检索我的select选项,这些数据库位于一个不是我的defaut连接的连接中 但我得到了一个错误:未定义变量:marqs(视图:C:\wamp64\www\projetSovac\resources\views\home.blade.php) 这是我的控制器代码 public function index() { $marques= DB::connection('sqlsrv2')->table('marque')->get(); $mo

我试图从3个数据库中检索我的select选项,这些数据库位于一个不是我的defaut连接的连接中

但我得到了一个错误:未定义变量:marqs(视图:C:\wamp64\www\projetSovac\resources\views\home.blade.php)

这是我的控制器代码

   public function index()
{

    $marques= DB::connection('sqlsrv2')->table('marque')->get();
    $modeles = DB::connection('sqlsrv2')->table('Modele')->select( DB::raw('CodeModele'))->get();
    $finitions = DB::connection('sqlsrv2')->table('finition')->select( DB::raw('CodeFinition'))->get();


    $marqs = $marques->all(['marque']);
    $models = $modeles->all(['CodeModele']);
    $Finitions = $finitions->all(['CodeModele']);
    return View::make('home')

        ->with(compact($marqs))

        ->with(compact($models))

        ->with(compact($Finitions));
    return View('home');
}
还有我的home.blade.php代码

  <tr class="filters">
                        <th><input type="text" class="form-control daterangepicker-field" placeholder="Période d'analyse" disabled ></th>
                        <th><select class="form-control "  disabled>
                                {!! Form::Label('marque', 'marque:') !!}
                                @foreach($marqs as $marque)
                                    <option value="{{$marque->codeMarque}}">{{$marque->codeMarque}}</option>
                                @endforeach
                            </select>
                        </th>

{!!Form::Label('marque','marque:')
@foreach($marqs作为$marque)
{{$marque->codeMarque}
@endforeach
你能帮我找出问题吗? 谢谢

compact($marqs)
想要一个字符串来预测要传递给视图的变量。使用:
compact('marqs')
您还可以组合变量,如
compact('marqs'、'models'、…等)

另外,您现在在函数中返回了2次,这是不可能的

我会把你的函数改写成这样:

$marques= DB::connection('sqlsrv2')->table('marque')->get();
$modeles = DB::connection('sqlsrv2')->table('Modele')->select( DB::raw('CodeModele'))->get();
$finitions = DB::connection('sqlsrv2')->table('finition')->select( DB::raw('CodeFinition'))->get();

$marqs = $marques->all(['marque']);
$models = $modeles->all(['CodeModele']);
$Finitions = $finitions->all(['CodeModele']);
return View::make('home')->with(compact('marqs', 'models', 'Finitions'));
假设前6行得到了实际数据,我所更改的只是返回值

您可能想了解如何使用laravel模型


我不确定你是否定义了任何,但它可以使你的代码分配更简单。

它正在抱怨
{!!Form::Label('marque','marque:')!!}
你确定表单在
config/app.php
=>
别名中吗
{!!\Form Label('marque','marque:')!!}
是否为您工作?可能是重复的否-它不工作!我刚刚在我的config/app.php中添加了表单,我想我也应该运行这个命令
composer require“laravelcollective/html”:“^5.4”
也许这可以解决您的问题?