2017-08-14 148 views
1

我完成了在我的模型中的關係,但我不知道要傳遞數據關係來查看,希望你能幫助我。通過數據關係查看laravel 5.2

模型Siswa

public function Absen() 
{ 
    return $this->hasMany(Absen::class); 
} 

模型艾比森

public function Siswa() 
{ 
    $this->belongsTo(Siswa::class); 
} 

Absen tabel

艾比森表

Siswa Table

Siswa表

AbsenController @索引

public function index() 
{ 

    $absen = Absen::where('level', '=', 'Siswa')->get(); 

    return view('absen.index')->with('data', $absen); 
} 

index.blade.php

@foreach($data as $index => $value) 
      <tr> 
       <td>{{ $index+1 }}</td> 
       <td>{{ $value->nama }}</td> 
       <td>{{ $value->keterangan }}</td> 
       <td> 
       {!! Form::open(['route' => ['siswa.destroy', $value->id], 
       'method' => 'DELETE']) !!} 
        {{ Form::submit('Hapus', ['class' => 'btn btn-danger']) }} 
        <a href="{{ route('siswa.edit', $value->id) }}" class="btn 
       btn-warning">Edit</a> 
       {!! Form::close() !!} 
       </td> 
      </tr> 
      @endforeach 

的問題是$值 - >非農產品市場準入沒有出現在我的觀點,但我做了表siswa創建關係,表absen.Thank

+0

我認爲這裏有一些困惑。您在視圖中實際顯示的數據是什麼?你正嘗試訪問'$ value-> nama',但該列不存在於'Absen'模型中? – fubar

+0

$ value-> nama它指表Siswa @fubar –

+0

我明白這一點。但是在你的控制器中,你正在查詢Absen表,而不是表Siswa,這就是爲什麼這個屬性是空的。所以這是你的錯誤。 – fubar

回答

3

那抹不艾比森類的屬性,但你的價值是阿布森班。雖然你已經定義了Absen和Siswa之間的關係,但Siswa的屬性仍然沒有直接繼承到Absens。您可以先獲得Absen的Siswa,然後獲取Siswa的屬性。

所以,你必須做的是:

呼叫$value->Siswa->nama代替$value->nama,你應該已經顯示在非農產品市場準入。

+0

感謝它的工作 –