2017-11-25 125 views
0

我想在我的模态窗口中显示一个查询的结果,在那里我实现了一个表,我想向我展示结果,但它给了我一个错误Undefined variable:vehiculos我已经尝试了所有内容并且没有结果我希望你能帮我附上我的代码。错误foreach上的意见laravel

esta es mi vista。

<!-- Modal --> 
    <div class="modal fade" id="m-buscar" role="dialog"> 
    <div class="modal-dialog modal-lg"> 

     <!-- Modal content--> 
     <div class="modal-content"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">&times;</button> 
      <h4 class="modal-title">Lista de Carros</h4> 
     </div> 
     <div class="modal-body"> 
     <div class="panel-body"> 
     <table class="table"> 
    <thead> 
     <tr> 
      <th>placa</th> 
      <th>modelo</th> 
      <th>Email</th> 
      <th>Carros Propios</th> 
      <th>Carros Manejados</th> 
      <th>Opciones</th> 
     </tr> 
    </thead> 
     <tbody> 
     @foreach($vehiculos as $key => $c) 
      <tr class="id{{$c->id}}"> 
       <td>{{ $c->placa }}</td> 
       <td>{{ $c->marca }}</td> 
       <td>{{ $c->modelo }}</td> 
      </tr> 
     @endforeach 
    </tbody> 
    </table> 
     </div> 
     </div> 
     </div> 
     </div> 

这是我的控制器

public function verCarro(Request $r) 
    { 
     $vehiculos = vehiculo::join('users','vehiculos.user_id','=','users.id') 
        ->select('vehiculos.id','vehiculos.marca','vehiculos.modelo','vehiculos.placa') 
        ->where('vehiculos.user_id','=', $r->id) 
        ->orderBy('vehiculos.id','DESC') 
        ->get(); 

     return view('admin.usuario.buscar', compact('vehiculos')); 
    } 

叫过我的情态

$(document).on('click','.btn-user',function(e){ 
       var id = $(this).val(); 
       $.ajax({ 
        type: 'get', 
        url: "{{url('verCarro')}}", 
        data:{id:id}, 
        success:function(data) 
        { 
         $('#m-buscar').modal('show'); 
       }) 
      }) 
+1

首先检查print_r($ vehiculos)的输出是什么。可能没有输出。 –

+0

或尝试使用dd(vehiculos)打印;在控制器中。 –

+0

dd(vehiculos)它将不会被打印,因为控制器是从Ajax请求启动的。 他只能返回$ vehiculos并将“数据”响应分配给某个测试字段,以便在屏幕上查看它。 – Radu

回答

0

在最后一个项目我做同样的事情,但在一个稍微不同的方式。

因此,控制器将启动变量$ vehiculos的admin.usuario.buscar视图。

你可以离开了“M-buscar”分区空,并用返回视图admin.usuario.buscar这样的事情来填充它的阿贾克斯成功分支:

在主HTML,你将有DIV M-buscar空

<div class="modal fade" id="m-buscar" role="dialog"></div> 

...

,并在响应中它

(我用0123,你会注入admin.usuario.buscar视图$('#m-buscar').html (data);代替$('#m-buscar').modal('show');

$(document).on('click','.btn-user',function(e){ 
       var id = $(this).val(); 
       $.ajax({ 
        type: 'get', 
        url: "{{url('verCarro')}}", 
        data:{id:id}, 
        success:function(data) 
        { 
         $('#m-buscar').html (data); 
       }) 
      }) 

视图admin.usuario.buscar应该没有任何延长总体布局只是要在空间buscar DIV

admin.usuario.buscar注入HTML代码视图应该只包含div的实际代码:

...

<div class="modal-dialog modal-lg"> 

     <!-- Modal content--> 
     <div class="modal-content"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">&times;</button> 
      <h4 class="modal-title">Lista de Carros</h4> 
     </div> 
     <div class="modal-body"> 
     <div class="panel-body"> 
     <table class="table"> 
    <thead> 
     <tr> 
      <th>placa</th> 
      <th>modelo</th> 
      <th>Email</th> 
      <th>Carros Propios</th> 
      <th>Carros Manejados</th> 
      <th>Opciones</th> 
     </tr> 
    </thead> 
     <tbody> 
     @foreach($vehiculos as $key => $c) 
      <tr class="id{{$c->id}}"> 
       <td>{{ $c->placa }}</td> 
       <td>{{ $c->marca }}</td> 
       <td>{{ $c->modelo }}</td> 
      </tr> 
     @endforeach 
    </tbody> 
    </table> 
     </div> 
     </div> 
     </div> 

希望它能帮助:)

+0

如果这样工作,请让我知道:) – Radu