当我将记录放入“trashbin”时,我使用正常的删除方法,并启用了softDelete。
当我强制删除记录时,我也想删除所属图像。所以我想使用Laravel的活动。在forceDeleting我想要执行一些代码。
我可以要求什么事件?在致电forceDeleting
时,我得到:
Call to undefined method Illuminate\Database\Query\Builder::forceDeleting()
我应该用什么事件?
编辑现在我正在使用:
Document::deleting(function ($document) {
if(!$document->deleted_at) {
// normal delete
}else{
// force delete
}
});
另见:https://codeneverlied.com/force-deleting-event-in-laravel/
但是我仍然想知道是否有这样的事件。
您可以创建自己的活动并自行启动。最容易扩展现有的删除事件,也可以称之为强制删除。
下一步是扩展softDeleting特征以自动为您触发此事件。
根据Eloquent文档,这些是事件:
检索,创建,创建,更新,更新,保存,保存,删除,删除,恢复和恢复。
所以,为了回答你是否存在的问题,答案是否定的。不是根据Laravel 5.8的文档
https://laravel.com/docs/5.8/eloquent
希望我能提供帮助。
ImJT