繁体   English   中英

恢复 laravel 中的软删除子项

[英]restore soft delete child in laravel

我正在使用 laravel 并且我想在我恢复父级时恢复子级,例如我已经删除了一个用户并且每个用户都有一个商店,所以商店被删除了 $cascadeDeletes 和所有与用户相关的孩子但是当我想恢复用户她/他的商店不会恢复

这里是商店 Model

  protected $cascadeDeletes = ['ProductCategories' , 'products', 'slideshows', 'purchases', 'vouchers', 'brands', 'feedbacks', 'tags', 'subscribers', 'invoice', 'donwloadLinkRequests', 'stats', 'compares', 'wishlists', 'faqs','shopContact']

和用户 Model

  protected $cascadeDeletes = ['addresses', 'userInformation', 'wishlist', 'comments','compare', 'shop', 'purchases', 'cart'];

** 我正在使用 iatstuti/laravel-cascade-soft-deletes 所以有什么办法吗**

您可以为用户模型restoring事件添加监听器并恢复相关商店。 在用户机型开机function中,添加以下内容:

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

请参阅model 事件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM