Szybkie zapytanie dotyczące niektórych relacji modelu danych w Laravel.morphTo i hasMany Laravel
Mam produkt, który należy do użytkownika, ale użytkownik może mieć wiele produktów. Ale produkt może mieć także wiele osób, które składają ofertę na ten produkt;
class Product extends Model
{
public function user(){
return $this->belongsTo('App\User');
}
public function offer(){
return $this->hasMany('App\Offer');
}
Ale produkt może mieć również różne rodzaje sub produktu, na przykład, można być pojazd, lub telefon komórkowy, każdy z różnych kolumn w moim migracji, więc zakładam, że muszę morph wiele
W Product.php
public function imageable()
{
return $this->morphTo();
}
W Vehicle.php
public function products()
{
return $this->morphMany('App\Product', 'imageable');
}
Jednak podczas rozmowy:
$product = Product::findOrFail($id);
uzyskać zerowy, gdy próbuję zrobić coś podobnego $product->vehicle
dodam identyfikator pojazdu w mojej bazy danych do imageable_id
na stole produktów, a typem imageable
"pojazd" również na stole produktów.
Co ja tu robię źle?
To mnie jeszcze bardziej dziękuję, ale teraz dostaję "pojazd" klasy "nie znaleziono" ' – iLC
Jak przechowujesz dane w tabeli polimorficznej? W bazie danych imageable_type powinno wyglądać tak: 'App \ Vehicle' –
Ach masz rację, to była aplikacja \ Vehicle w bazie danych, dzięki Chase !! (zaznaczę to poprawnie, gdy SO mi pozwoli) – iLC