Merhaba,
Modellerin AracMarka, AracModel, AracAltModel oldugunu varsayiyorum.
AracMarka modeline relationship tanimlarsin;
public function models()
{
return $this->hasMany(AracModel::class); // arac_model tablonda arac_marka_id olusturmalisin, bigInt(1)
}AracModel modelin icin alt modellere ulasmak icin;
public function altModels()
{
return $this->hasMany(AracAltModel::class); // yine ayni sekilde arac_alt_model tablonda arac_model_id olusturmalisin, bigInt(1)
}View'de kullaniciya gosterirken veya controllerde kayita eristikten sonra, ornegin;
public function index(AracMarka $aracmarka, Request $request)
{
return $aracmarka->models; // markaya ait modellerin gelir
}Controllerdan view'e gonderirken;
public function index(AracMarka $aracmarka, Request $request)
{
return view('index', ['aracmarka' => $aracmarka]);
}Route:
Route::get('/aracmarka/{aracmarka}', [AracMarkaController::class, 'index'])->name('aracmarka.index');View'den $aracmarka->models olarak ulastiginda o markaya ait modelleri gorursun. Foreach veya forelse ile dondurursun blade view'da. Ayni sekilde Model'deki childrene (alt_modellere) bu sekilde ulasabilirsin. Ters relationship yapmak istersen (mesela model'den marka'ya ulasmak istiyorsun);
AracModel modeline;
public function marka()
{
return belongsTo(AracMarka::class);
}Daha fazla bilgi sahibi olmak istersen relationship dokumantasyonunu inceleyebilirsin: https://laravel.com/docs/9.x/eloquent-relationships