предположим, что я хочу получить имя автора внутри модели книги
// app/Book.php
protected $appends = ['author_name'];
public function author() {
return belongsTo(Author::class, 'author_id');
}
public function getAuthorNameAttribute() {
return $this->author->name;
}
, но это также добавит всю коллекцию авторов к последней коллекции книг, что увеличит время загрузки, когда пытаюсь загрузить около 100 книг, сейчас я работаю над этим, удаляя автора после получения такого имени
// app/Book.php
protected $appends = ['author_name'];
public function author() {
return belongsTo(Author::class, 'author_id');
}
public function getAuthorNameAttribute() {
$authorName = $this->author->name;
unset($this->author);
return $authorName;
}
есть ли лучший способ сделать это? или я пропустил какую-то функцию от eloquent?
Cheers