gpt4 book ai didi

php - Laravel 模型恢复事件

转载 作者:行者123 更新时间:2023-12-02 09:07:15 24 4
gpt4 key购买 nike

所以我有 2 个模型用户和员工。他们彼此之间存在一对一的关系。

User.php“hasOne”员工和Staff.php“属于”用户

当我软删除用户时,我也想软删除员工条目,我已经使用(完美工作)实现了这一点:

static::deleting(function ($user) {
$user->staff()->delete();
});

现在我想在恢复用户时恢复工作人员,因为我尝试使用此功能(不起作用):

static::restoring(function ($user) {
$user->staff()->restore();
});

但这不起作用。用户条目已删除,但员工条目仍保持软删除状态。

  • 有人可以帮助我理解我在这里做错了什么吗?

  • 此外,这是完成此任务的最佳方法吗?或者还有其他方法可以做到这一点吗?

PS:我使用的是 Laravel 5.5

最佳答案

它不起作用,因为 $user->staff() 无法获取已删除的员工。这就是关系默认的运作方式。

只需将其替换为:

static::restoring(function ($user) {
$user->staff()->withTrashed()->restore();
});

关于php - Laravel 模型恢复事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49017347/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com