hasMany(Genre::class); } public function species(): HasManyThrough { return $this->hasManyThrough(Specie::class, Genre::class); } public function varieties() { return $this->hasManyDeep(Variety::class, [Genre::class, Specie::class]); } public function scopeByName($query, $name) { return $query->where('name', $name); } }