2016-03-29 28 views
0

Veritable yajra paketini proje lravel 5.1'de kullanıyorum ve laravel aracılığıyla veri almak istiyoruz bu benim öneri model kodum.datatable yajra laravel eloquent çalışmıyor

public function candidate() 
    { 
       return $this->belongsTo('App\Candidate', 'suggested_user'); 
    } 

Ve bu denetleyici kodudur.

public function getBCReport() 
    { 
$candidates = \App\Suggestion::with('candidate')->get(); 
return Datatables::of($candidates) 
    ->make(true); 
    } 

Ve bu benim bakış kodu:

< Ben Datatable yajra belgelerine göre bu kodu

$candidates = \App\Suggestion::with('candidate'); 

kullanmak kontrolörü olarak

div class="panel-body"> 
     <div class="candidatereport"> 
      <div class="table-responsive">        
       <table class="table display" id="table_id" cellspacing="0" width="100%"> 
        <thead> 
         <tr> 
         <th>First Name</th> 
         <th>Last Name</th> 

         </tr> 
        </thead> 
        <tbody> 
        </tbody> 
       </table> 
      </div> 
     </div> 
    </div> 
</section> 
<script> 
$(function() { 
    $('#table_id').DataTable({ 
     processing: true, 
     serverSide: true, 
     dataType: 'json', 
     ajax: '{!! route('datatables.candidatereport') !!}', 
     columns: [ 
      { data: 'candidate.fname', name: 'fname' }, 
      { data: 'candidate.lname', name: 'lname' }, 

     ] 
    }); 
}); 
</script> 

http://datatables.yajrabox.com/eloquent/relationships hiçbir bulunuyor t Bu datatable yajra belgelerine göre değil

$candidates = \App\Suggestion::with('candidate')->get(); 

Onun çalışma popo ile kullandığınızda popo çalışma. Bunun arkasındaki sebeplerden herhangi biri ne olduğunu söyler. Teşekkürler

+0

'almak()' verecek bir 'Collection' Var Datatables için gerekli olan. –

cevap

0

Belirtilen modelleri kullanırken, sorguya kısıtlamalar eklendiğinde get() yöntemi kullanılır. Sorunuzda, yajra belgelerinde verilen örnekte neden çalıştığını bilmek istersiniz. Sebebi ise, veri tablosunu, kendilerine özgü modelin kendisinden geri döndürdüler. Oysa, kontrolör seviyesinde datatable yaratıyorsunuz. Dolayısıyla, kontrolün bu hassas ilişkiden sonuçların alınması için get() yöntemi gereklidir.

link'a bakın. Çoklu Modellerin Geri Alınması kapsamında, get kullanımı açıklanmaktadır. İşte

0

sen benim ayrıntılı cevap bulacaksınız söz ettim, Kontrolör yöntemi, Görünüm yapısı, Datatable JS kodunun, bir göz

Follow Stack overflow answer