RedBeanの $model->open()
メソッドで実現できる方法と同様に、ロード時にLaravel / Eloquentモデルにカスタム属性/プロパティを追加できるようにしたいと思います。
たとえば、現時点では、私のコントローラーには次のものが含まれています。
public function index()
{
$sessions = EventSession::all();
foreach ($sessions as $i => $session) {
$sessions[$i]->available = $session->getAvailability();
}
return $sessions;
}
ループを省略して、 'available'属性を既に設定および設定できると便利です。
ドキュメントで説明されているいくつかのモデルイベントを使用して、オブジェクトの読み込み時にこのプロパティをアタッチしようとしましたが、これまでのところ成功していません。
ノート:
- 「利用可能」は、基になるテーブルのフィールドではありません。
$sessions
APIの一部としてJSONオブジェクトとして返されているため$session->available()
、テンプレートのようなものを呼び出すことはオプションではありません