Das Ziel dieser Abfrage ist es, alle Stories zu finden, die einen Image Type mit dem Namen "email_small" haben. Nicht alle Geschichten haben Bilder.Laravel Eloquent Unterabfrage mit 3 Tabellen
Es gibt drei Tabellen/Modelle beteiligt: Storys, storyimage und imagetypes
Eine Geschichte Bilder viel Geschichte
/* Story model */
public function storyImages()
{
return $this->hasMany(StoryImage::class);
}
Während eine Geschichte Bild hat einen Bildtyp
/* Storyimage model */
public function imgtype()
{
return $this->belongsTo('App\Imagetype','imagetype_id');
}
hat
Ich kann zum zweiten Schritt der Auswahl aller Geschichten mit einem Bild, aber ich bin in der Unterabfrage verloren
$stories = Story::whereHas('storyImages', function($query){
$query->where($query->imgtype()->name, '=', 'email_small');
})
->->get();
Ah richtig, das ist wahrscheinlich einfacher. Ich überlegte mir diesen Gedanken. – Ravioli87