DBの保存に一手間追加したい
フォームの入力などで取得したデータを、ちょっと変形させてからDBに保存したい。
でも、コードの途中を変更することは困難だったり(オレオレフレームワークとか)、
該当カラムは必ず変形させたいとかがあったとします。
私だと、日付を入れるカラムに、空文字が来たらnullにしたい場合がありました。
Carbonに矯正されると‘0000-00-00’になってしまうので。
これらにどう対応するか
setXxxxAttributeの使い所
public function setXxxxDateAttribute($value) { $this->attributes['xxxx_date'] = empty($value) ? null : Carbon::parse($value); }
Modelクラス上で、setXxxxAttributeを使いましょうφ(・・
使い方を知っていても、使い時知ってないと忘れますねφ(・・