Pregunta

Estoy tratando con el siguiente código:

// BaseModel
abstract class BaseModel extends Eloquent {
    public static function boot()
    {
        parent::boot();

        static::saving(function($model)
        {
            echo 'Fired BaseModel';
        });
    }
}

// Project (extends BaseModel)
class Project extends BaseModel {
    public static function boot()
    {
        parent::boot();

        static::saving(function($model)
        {
            echo 'Fired Project';
        });
    }
}

Al guardar datos nuevos/existentes en el modelo de proyecto, esto solo me da Fired BaseModel.No activa en absoluto el evento de ahorro en el modelo de proyecto.¿Hay alguna manera de superar esta limitación?

¿Fue útil?

Solución

Fire el evento del niño antes de llamar al evento principal debe resolverlo

// Project (extends BaseModel)
class Project extends BaseModel {
    public static function boot()
    {   
        static::saving(function($model)
        {
            echo 'Fired Project';
        });

        parent::boot();
    }
}

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top