Por ejemplo guardar comentarios tanto de películas como de cineastas.
Crear un modelo Comentario:
public function comentario() {
return $this->morphTo();
}
En el modelo Pelicula:
public function comentarios() {
return $this->morphMany("App\Comentario", "comentario");
}
En el modelo Cineasta:
public function comentarios() {
return $this->morphMany("App\Comentario", "comentario");
}
La tabla comentario debe tener este formato:
id
comentario
comentario_id // guardar el id de la tabla
comentario_type // guardar el tipo de modelo que es: App\Cineasta ó App\Pelicula
Y ya en routes/web.php:
Route::get("/comentarios", function() {
$cineasta = Cineasta::find(1);
foreach ($cineasta->comentarios as $item) {
echo $item->comentario."<br>";
}
echo "<hr>";
$pelicula = Pelicula::find(1);
foreach ($pelicula->comentarios as $item) {
echo $item->comentario."<br>";
}
});
No hay comentarios:
Publicar un comentario