我的网站上有一个问题,真的让我感到烦恼..我用laravel创建了一个博客。在我的博客中,您可以创建一个线程并在您或其他用户线程下进行注释。在我完成评论功能后,删除线程'功能不再有用了。我为这个错误搜索了很多,直到我决定创建一个新的数据库。这次我设置了我需要的所有外键,例如:ON DELETE CASCADE。在我手动删除线程之前,因为我有一条sql错误消息,因为外键原因我无法删除线程。使用我的新数据库,它再次起作用......但不幸的是,我仍然无法从我的网站删除我的一个帖子......在我仔细查看我的错误消息后,我发现了一条错误消息,我的destroycomment方法和我的destroythread方法有问题。
因此,对于测试,我删除了所有重新注释到评论,评论功能和评论路线的html。它奏效了!这意味着2个删除功能存在问题。
所以请看看它,因为我几乎做了我所知道的一切..所以请帮助我!
public function destroythread($id)
{
$thread = Thread::query()->findOrFail($id);
$thread->delete();
return redirect(action('Test\\TestController@startpage', [Auth::user()->id]));
}
public function destroycomment($id)
{
$comment = Comment::query()->findOrFail($id);
$comment->delete();
return redirect()->back();
}
在我的HTML中,我使用了这两个功能! destroycomment函数有效,但destroythread不起作用。我认为原因是,因为如果线程消失了,评论将保留。
编辑:我放弃后的最后一次尝试:
public function destroythread($id)
{
$thread = Thread::query()->findOrFail($id);
$comment = Comment::query()->where('thread_id', $id)->get();
$thread->delete();
$comment->delete();
return redirect(action('Test\\TestController@startpage', [Auth::user()->id]));
}