【问题标题】:Getting 500 error code while fetching data from DB using Ajax in Laravel在 Laravel 中使用 Ajax 从 DB 获取数据时获取 500 错误代码
【发布时间】:2020-01-24 04:40:56
【问题描述】:

我在 Laravel 中使用 Ajax 从数据库中获取数据时收到 500 错误代码:

public function search(Request $request)
{
    if ($request->ajax()) {
        $query = $request->get('query');
        $data = Constant_model::get_icons('fontawesomeicons', 'id', 'DESC', 20, $query);
    }

    return response($data->jsonSerialize(), Response::HTTP_OK);
}

get_icons 函数是:

public static function get_icons($table, $order_column, $order_type, $limit, $search = '')
{
    $result = DB::table($table)
        ->select('*')
        ->orderBy($order_column, $order_type)
        ->where('icon_name', 'like', '%'.$search.'%')
        ->paginate($limit);

    return $result;
}

我正在尝试使用带有以下 Javascript 的 Ajax 获取数据:

$.ajax({
    url: "/icons/search",
    method: "GET",
    data: {
      search: query
    },
    dataType: 'json',
    error: function (error) {

        console.log(error);

    },
    success: function(response) {

      alert(response);
    }
  });

【问题讨论】:

  • 请检查storage/logs/ 是否有错误。并发布具体错误。
  • [2020-01-24 18:08:32] local.ERROR: Class 'App\Http\Controllers\Response' not found {"exception":"[object] (Symfony\\Component \\Debug\\Exception\\FatalThrowableError(code: 0): Class 'App\\Http\\Controllers\\Response' not found at C:\\projects\\bb\\app\\Http\\Controllers\\ Icons.php:47)
  • 请通过编辑将所有相关信息(尤其是错误消息!)添加到您的问题中

标签: php ajax laravel laravel-6


【解决方案1】:

App\Http\Controllers\Response。您忘记在代码上方输入use Response
把它放进去:

use Response;

如果你不想导入它,或者只是使用一个帮助器:

 return response()->json(...);

现在,您必须将其退回,如下所示:

return response()->json($data->jsonSerialize(), Response::HTTP_OK);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-25
    • 1970-01-01
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 2020-09-19
    • 2018-02-11
    相关资源
    最近更新 更多