こんにちは。ファガイです。
本日は、Laravel4のアクセサーに関して軽く解説しようと思います。
そもそもアクセサーって何?
アクセサーはLaravelのEloquentに搭載されている機能の一つです。
情報を取得する際、セットする際に、何か変更をかけてから取得したり、セットしたり出来る便利な機能です。(セットはミューテーターですが)
詳しくは、
アクセサーとミューテーター Laravel4 日本語ドキュメント
上記に記載があります。
アクセサーってDBにあるものだけしかセット出来ないように見えるけど・・・
実は!DBに情報が無くてもセット出来ます!
例えばこんな感じで。(bodyカラムの情報をエスケープして文字を丸める)
public function getShortBodyAttribute()
{
return mb_strimwidth(e($this->attributes['body']),0,180,'...');
}
取得するときには、
$model->shortBody;
実は上で取れてしまうんです・・・。よく出来てる。
これだけ言いたかっただけです。
ではでは~。
コメント