2017-09-26 24 views
0

私はlaravelに新しいですし、私は関係テーブルからすべてのデータを取得することはできません。この問題、で立ち往生した、laravel 5.5

で4関係テーブルからすべてのデータを取得する方法を、この私のERDthis my ERD database

この私のKrs.phpモデル:

protected $fillable = ['nim','nip','kode_mk','absen','uts','uas']; 
protected $table = 'krs'; 

public function mahasiswa(){ 
    return $this->hasMany('App\Mahasiswa'); 
} 

public function dosen(){ 
    return $this->hasMany('App\Dosen'); 
} 

public function makul(){ 
    return $this->hasMany('App\Matakuliah'); 
} 

この私のMatakuliah.phpモデル:

protected $fillable = ['kode_mk','makul','sks']; 
protected $table = 'mata_kuliah'; 

public function krs(){ 
    return $this->belongsTo('\App\Krs'); 
} 

この私のDosen.phpモデル:

protected $fillable =['nip','nama','jeniskelamin','alamat','notlp']; 
protected $table='dosen'; 

public function krs(){ 
    return $this->belongsTo('App\Krs'); 
} 

この私のMahasiswa.phpモデル:

protected $fillable = ['nim','nama','alamat','jenis_kelamin','no_tlp','email','tempat','tanggal','link','id_jurusan']; 
protected $table = 'mahasiswa'; 

public function jurusan(){ 
    return $this->hasOne('App\Jurusan'); 
} 

public function krs(){ 
    return $this->belongsTo('App\Krs'); 
} 

、ここでは私のKrsController.phpです

public function index() 
{ 
    $data = Krs::with(['mahasiswa','dosen','makul'])->first()->toArray(); 
    return view('Krs.krsIndex',compact('data')); 
} 

すべてのテーブルからすべてのデータを取得するにはどうすればよいですか?たとえば私はmahasiswaからnamaを取得したいですか?私はそれを行う方法を知っていない...私は試してみて、昨夜から探していたが、

編集1mata_kuliahからデータを取得することはできません前に、まだ私の悪いgrammar.thanksして申し訳ありません何も..を変更しないでください表印刷用 この私のブレード構文データ

()機能を を使用して
{{ $data['makul'] }} 

答えて

0

$client_profile = Client::where([['cid', '=', $cid], ['is_delete', '=', 0]])->with(['status', 'group_no', 'caseworker', 'clerk', 'active_attendants'])->first()->toArray(); 
下記

は私のモデルである:

class Client extends Model { 
    public function status() { 
     return $this->hasOne('App\Models\Status', 'sid', 'status'); 
    } 

    public function group_no() { 
     return $this->hasOne('App\Models\ClientGroups', 'cgid', 'group_no'); 
    } 

    public function caseworker() { 
     return $this->hasOne('App\Models\Caseworker', 'cwid', 'caseworker_name'); 
    } 

    public function clerk() { 
     return $this->hasOne('App\Models\Supervisorsnurses', 'snid', 'clerk'); 
    } 

    public function active_attendants() { 
     return $this->hasMany('App\Models\AssociatedTask', 'cid'); 
    } 

    public function location() { 
     return $this->hasOne('App\Models\Locations', 'lid', 'location'); 
    } 
} 
+0

私は([ 'mahasiswa'、 'dosen'、 'makul'])で:: KRS =この '$データを試してみてください - >最初の() - >のtoArray() ; ( 'Krs.krsIndex'、compact( 'data')); ' しかし、それは動作しません、エラーは、列が見つかりません、PHPの消費RAMが高くなるだろう、あなたは解決策がありますか? –

+0

私のモデルを確認したら、pkと外部キーを関係関数 –

+0

に送る必要があります。これは良いことですが、今はエラーです**非オブジェクトのプロパティを取得しようとしています** ,,,, '@foreach($ data as $ data){{$ data-> name @endforeach}} 'はindex.blade.phpでデータを印刷するのに適していますか? –