2017-11-25 49 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