Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Relasi table eloquent(laravel),namun hasil query dari table yang di relasiin tidak muncul
izin tanya suhu,saya punya masalah saat menggunakan relasi database dengan eloquent.kode nya terdiri dari -Model(Nama_anime,dan Episode_anime) -Controller(ControllerAdmin)
nahh,saya ingin membuat relasi one to many,tapi data yang muncul hanya data di table pertama,data pada table relasi nya tidak muncul.
ini code untuk Nama_anime
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Nama_anime extends Model
{
protected $table='nama_animes';
public function episode_animes(){
return $this->hasMany('App\Episode_anime');
}
//
}
ini code untuk Episode_anime
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Episode_anime extends Model
{
protected $table='episode_animes';
public function nama_anime(){
return $this->belongsTo('App\Nama_anime');
}
}
ini untuk controller nya
public function update($id)
{
$nama_anime = Nama_anime::all();
return view ('/admin/update',['nama_anime'=>$nama_anime]);
}
ini untuk nampilin nya
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Nama Anime</th>
<th>Episode</th>
</tr>
</thead>
<tbody>
@foreach($nama_anime as $a)
<tr>
<td>{{ $a->nama_anime }}</td>
<td>
@foreach($a->episode_animes as $t)
{{$t->nama_episode_anime}},
@endforeach
</td>
</tr>
@endforeach
</tbody>
</table>
nah yg muncul hanya di table nama_anime ,tapi di table episode_anime tidak muncul.Makasih
Tanggapan
nama kolomnya betul nama_episode_anime? dan kolom id dari animenya sudah ada di table episode_anime?
1 Jawaban:
Perlu dipanggil child table-nya, seperti berikut ini :
<pre> $nama_anime = Nama_anime::all(); $child = $nama_anime->episode_animes() </pre>
Yang saya ketahui hasMany() adalah relasai 1-N. Artinya setiap 1 Film memiliki banyak episode. Bentuknya seperti ini : <pre> $nama_anime = Nama_anime::find(1); $child = $nama_anime->episode_animes() </pre>