我想知道如何将Laravels softdelete与MySql外键restrict约束一起使用。
框架中是否已经构建了一些内容?Softdelete已经在工作,但我需要对相关模型进行某种验证。例如,给用户的错误消息"您不能删除此项目,因为它有5条相关记录"
谢谢,
软删除时没有用于"取消编程"DB关系的内置解决方案。
例如,您可以使用观察者(事件侦听器)或使用雄辩的模型事件,例如deleting
/deleted
,如:
public function boot()
{
User::deleted(function ($user) {
if ($user->deleted_at) {
// here You have to unplug all the dependencies
}
});
}
是的,在Laravel中,他们有软删除模型。要在模型上使用此Illuminate'Database'Eloquent'SoftDeletes
特征,请将deleted_at
列添加到$dates
属性中。
他们也有自己的查询软删除模型。你可以选择任何人。
您可以在中获取有关这方面的所有文档