加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – Laravel 4 Cascading Soft Deletes

发布时间:2020-12-14 19:43:37 所属栏目:大数据 来源:网络整理
导读:是否有模块化方式在L4中执行级联软删除? 我的数据库已经设计为使用硬删除来执行此操作,因为所有表都与另一个表相关..但是,我正在使用软删除,并且实际上不希望在我的模型中重载delete()方法 – 仅仅是因为( A)模型的数量,以及(B)当其他模型改变时必须在所有
是否有模块化方式在L4中执行级联软删除?

我的数据库已经设计为使用硬删除来执行此操作,因为所有表都与另一个表相关..但是,我正在使用软删除,并且实际上不希望在我的模型中重载delete()方法 – 仅仅是因为( A)模型的数量,以及(B)当其他模型改变时必须在所有模型中编辑delete()方法.

任何指针或提示将不胜感激.

我有使用 model events的级联删除工作,例如在产品模型中我绑定到已删除的事件,因此我可以软删除所有关系:
// Laravel's equivalent to calling the constructor on a model
    public static function boot()
    {
        // make the parent (Eloquent) boot method run
        parent::boot();    

        // cause a soft delete of a product to cascade to children so they are also soft deleted
        static::deleted(function($product)
        {
            $product->images()->delete();
            $product->descriptions()->delete();
            foreach($product->variants as $variant)
            {
                $variant->options()->delete();
                $variant->delete();
            }
        });
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读