なんて言ったらいいかよくわからないけどタイトルみたいなことがしたいときどうするか
テーブルのデータそのものじゃなくてテーブルのデータから計算できるデータがあったとして、それをクライアントに計算させるんじゃなくてレスポンスに入れて返したいとかそんな時
普通にドキュメントに書いてあるけど、そういう時は Accessors と $appends
ってのを使うとできる
Accessors は↓これ。で、 appends については同じページの一番下に書いてある
Eloquent ORM - Laravel - The PHP Framework For Web Artisans
$appends
は Eloquent
を継承してるクラスのメンバ変数として定義しておく
class SomeModel extends Eloquent { protected $table = 'some_table'; protected $appends = array('some_append_data'); // ←これ // Accessors public getSomeAppendDataAttribute() { return "something"; } }
こうすると、 SomeModel::find($id)
とかで返ってくるデータに
"some_append_data" => "something"
も一緒に入ってくる。