thinkphp6.02 软删除下一对一关联删除失效

浏览:1326 发布日期:2020/03/02 分类:ThinkPHP6专区 关键字: tp6 软删除 关联
应用场景:删除文章,软删除。

数据表:文章模型存在两张表,一张主表,一张附表,附表主要存文章正文内容

控制器代码:        $article = Content::with('article')->find(1);
        return Json::success($article->together(['article'])->delete());
Content模型关联代码:        public function article(){
               return $this->hasOne('ContentArticle','content_id')
                               ->bind(['body']);
       }
运行结果:主表删除成功,附表没有关联删除。

查找原因:执行删除操作的是框架的SoftDelete.php中的delete()方法,发现在关联中加入bind绑定后,$this->relationWrite将变成null。若去掉绑定,则能成功关联删除

疑惑:这个是框架本身这么考虑设计的,还是一个BUG,我想既然给了bind绑定和软删除,两者不一定冲突才对,建议改进下。
忘官方采纳!
最佳答案
评论( 相关
后面还有条评论,点击查看>>