我想重写模型事件并找到此示例代码,但不确定我是否完全理解它。
资源:
http://driesvints.com/blog/using-laravel-4-model-events/
里面有一个静态方法和另一个静态方法...它是如何工作的?还是以某种方式在启动方法中设置了静态属性?
<?php
class Menu extends Eloquent {
protected $fillable = array('name', 'time_active_start', 'time_active_end', 'active');
public $timestamps = false;
public static $rules = array(
'name' => 'required',
'time_active_start' => 'required',
'time_active_end' => 'required'
);
public static function boot()
{
parent::boot();
static::saving(function($post)
{
});
}
}
最佳答案
static::saving()
仅对其自身(以及当前类中不存在的父类)调用静态方法saving
。因此,其本质上与以下操作相同:
Menu::saving(function($post){
});
因此,它正在引导功能内为
saving
事件注册一个回调。Laravel documentation on model events