如何根据Laravel保存事件的输入存储一个字段?

时间:2018-03-19 19:11:53

标签: php laravel eloquent laravel-eloquent

我在MySQL中有一个列存储了一些整数,我需要的是在保存(创建或更新)模型时,计算一些修改后的数据并将其存储在另一列中。我想为此使用saving事件,但不知道该怎么做。

我尝试将以下代码添加到AppServiceProvider,但它没有做任何事情。

Report::saving(function($report){
    if(!is_null($report->year_month)){
        $date = Carbon::parse($report->year_month . "-1");
        $report->first_date = $date;
    }
});

1 个答案:

答案 0 :(得分:0)

查看laravel中的模型事件。在模型中抛出这样的东西:

protected static function boot(){
    parent::boot();
    static::saving(function($thisModel){
        $thisModel->otherField = 'your value';
    }
}