Я хотел бы иметь возможность добавить собственный атрибут / свойство в модель Laravel / Eloquent при его загрузке, аналогично тому, как этого можно добиться с помощью $model->open()
метода RedBean .
Например, на данный момент, в моем контроллере у меня есть:
public function index()
{
$sessions = EventSession::all();
foreach ($sessions as $i => $session) {
$sessions[$i]->available = $session->getAvailability();
}
return $sessions;
}
Было бы неплохо иметь возможность пропустить цикл и иметь уже установленный и заполненный атрибут 'available'.
Я попытался использовать некоторые из событий модели, описанных в документации, чтобы присоединить это свойство при загрузке объекта, но пока безуспешно.
Ноты:
- 'available' не является полем в базовой таблице.
$sessions
возвращается как объект JSON как часть API, и поэтому вызов чего-то похожего$session->available()
на шаблон не является опцией