Получение кода ошибки 500 при получении данных из БД с использованием Ajax in Laravel - PullRequest
0 голосов
/ 24 января 2020

Я получаю код ошибки 500 при получении данных из базы данных, используя Ajax в Laravel со следующей функцией:

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;
}

Я пытаюсь получить данные, используя Ajax со следующим Javascript:

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

        console.log(error);

    },
    success: function(response) {

      alert(response);
    }
  });

1 Ответ

0 голосов
/ 24 января 2020

Класс App\Http\Controllers\Response. Вы забыли ввести use Response над своим кодом.
Введите это:

use Response;

Или просто используйте помощника, если вы не хотите его импортировать:

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

Теперь в вашем случае вы должны вернуть его так:

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