第一步 创建一个观察类
php artisan make:observer xxxobserver -m Models/模型(就是这个类要观察哪一个模型)
观察类里有几个方法 分别是我们增删改查时自动调用
常用的几个方法:
分别是
执行添加前/执行添加后
的动作 也就是一前一后
先观察完再进行添加 以及 先添加完再进行观察
creating/created
另一个就是修改前以及修改后 与上面同理
updating/updated
最后就是给我们的 模型注册观察类(也可以叫绑定)
在此注意 这个方法名必须为 boot 不可改动!!!!
public static function boot(){parent::boot();self:observe(观察类::class);}
观察类就此成功 每次执行增删改查之前就会自动调用相对应的方法 也就是添加时自动调用添加的观察类方法 修改时自动调用修改的观察类方法
补充 观察类给密码加密 首先需要通过依赖注入去获取添加的数据且必须为添加前的 观察方法
也就是本篇 上面说的 creating 方法(动作之前的方法需要手动创建 也就是 添加之前 修改之前的动作)
中间的为需要依赖注入的模型层
use App\Jobs\UserJob;
use App\Models\UserPort;//依赖注入的模型
use Illuminate\Support\Facades\log;
//添加之前的动作public function creating(UserPort $userPort){$userPort->password = bcrypt(request()->get('password'));}
本篇文章到此结束,感谢观看,如有不足欢迎指出!