同步删除回复报错?
使用$thread->replies()->delete();会报错;25 bind or column index out of range (SQL: delete from "replies" where "replies"."thread_id" = App\Reply and "replies"."thread_id" is not null)
换成下面后错误消失,暂不知具体原因Reply::query()->where('thread_id',$thread->id)->delete();
关于 LearnKu
把你Thread Model里的
replies关系发出来看看@jltxwesley
@jltxwesley 跟教程里都是一致的
@jltxwesley
感觉应该是作者遗漏了一些细节,因为我看到后面的这部分内容再次出现的时候两个with都没有了
@zh117
后面没有两个
with是因为换成了预加载$with array:@jltxwesley
课程里
$with = ['creator'];是这样的,不能加with关系,加了就会报错;@zh117
你可以去github看源代码:https://github.com/laracasts/Lets-Build-a-...
Thread预加载creator和channelReply预加载owner和favorites->withCount('favorites')->with('owner')是属于Reply Model,你看的$with = ['creator']是属于Thread Model.@jltxwesley 嗯。按照这边教程顺序反正走到我说的报错这一步时,Reply里的内容如下
我上面提到的错误是写在Thread里面的。后面的小伙伴记得这一步删掉
Thread里replies()方法下的两个with以解决test报错 :grinning:说的很对,遗漏了部分细节,已在本章开头进行说明。