Laravel框架本身没有自带beforeSave、afterSave的方法事件,但是可以自行加上这些,类似Yii框架,本身就自带这些方法,这类方法就像一个事件、触发器,可以在模型save之前,做一些属性值改变或者更多逻辑补充。
列举一下可以增加哪些before/after事件方法
before
/afterCreate()
before
/afterSave()
before
/afterUpdate()
before
/afterDelete()
before
/afterValidate()
如何给Model增加这些方法呢?
首先要给所有model定义一个基类,然后所有model都继承这个基类,
<?php namespace libs\Eloquent; abstract class Model extends \Illuminate\Database\Eloquent\Model { }
定义基类之后,我们来看看 \Illuminate\Database\Eloquent\Model,既然要添加对模型的操作,还是得深入了解一下。找到boot方法,上面有注释
/** * The "booting" method of the model.("引导"模型的方法) * * @return void */ protected static function bo