【问题标题】:Internal Server Error (500)内部服务器错误 (500)
【发布时间】:2019-01-17 16:06:29
【问题描述】:

对此有疑问

if(attributeName == 'id'){
    var id = dataValue;

    $("#discard").click(function(){
        alert(id);

        $.ajax({
            url: 'deleteob/' + id
        });

    });
}

我在 web.php 中有这条路线

Route::get('/deleteob/{id}', 'RequestsController@deleteOBRequest');

那么这是我的控制器

  public function deleteOBRequest($id){

    $masterIds = OBMaster::findOrFail($id);
    $detailIds =  OBRequest::where('details_id', $masterIds->id);

    $masterIds->destroy();
    $detailIds->destroy();

    return redirect('OB_ViewDetails');
  }

我的问题是内部服务器错误 (500)。我是 laravel 的新手。 希望有人能给我一些想法。

【问题讨论】:

  • 500 是内部服务器错误。请在此处检查您的代码,看看是否存在一些数据管理错误: $masterIds = OBMaster::findOrFail($id); $detailIds = OBRequest::where('details_id', $masterIds->id);
  • 请检查您的 error.log 并发布错误消息。
  • @Thomas.lin 。谢谢你的评论。我将 destroy() 更改为 delete() 并成功删除。
  • 很高兴听到这个消息

标签: javascript jquery ajax routes laravel-5.6


【解决方案1】:

你必须使用

$masterIds->delete();
$detailIds->delete();

而不是

$masterIds->destroy();
$detailIds->destroy();

【讨论】: