Имею
/**
* @return MorphMany
*/
public function images() : MorphMany
{
return $this->{'morphMany'}(Image::class, 'model')
->select([
'id',
'model_type',
'model_id',
'album_collection',
'location',
]);
}
которая просто тянет все имеющиеся `images` и потом класс Album работает с этими `images`.
С другой стороны когда я вывожу данные в верстку мне разумнее эти самые `images` сразу иметь сортированными по дате. Создал связь `imagesLatest`, которая
/**
* @return MorphMany
*/
public function imagesLatest() : MorphMany
{
return $this->images()
->addSelect([ 'created_at', 'updated_at' ])
->orderBy('updated_at', 'desc')
->orderBy('created_at', 'desc');
}
Но теперь все места в коде требуют `imagesLatest` вроде разумно и логично, но что-то некрасиво выходит. Временно в классе-альбоме написал
public function getImages() {
return $this->relationLoaded('imagesLatest') ? $this->imagesLatest : $this->images;
}
Но может лучше можно как-то?