为什么我在 ajax 上使用 laravel 8 中的 GET 方法得到错误 500
why I get error 500 on ajax with GET method in laravel 8
Laravel Ajax“获取”方法 - 错误 500
您好,
我做了 2 个 laravel 项目,一个用于测试 ajax 工作正常,另一个具有相同 ajax 的项目给出错误 500。
这是我的控制器
class SearchOrdersController extends Controller
{
function fetch_data(Request $request)
{
if ($request->ajax()) {
$sort_by = $request->get('sortby');
$sort_type = $request->get('sorttype');
$query = $request->get('query');
$query = str_replace(" ", "%", $query);
$orders = Order::query();
if (is_numeric($query)) {
$orders->where('amount', '<', $query);
} elseif (!empty($query)) {
$currency = Currency::where('name', 'like', '%' . $query . '%')->first();
if (!is_null($currency)) {
$orders->where('currency_id', $currency->id);
}
}
$data = $orders->orderBy($sort_by, $sort_type)->paginate(6);
return view('panel.user.order.pagination_data')->with(['data' => $data])->render();
}
}
}
我的 javascript :
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$(document).ready(function() {
function fetch_data(page, sort_type, sort_by, query) {
$.ajax({
url: "/pagination/fetch_data?page=" + page + "&sortby=" + sort_by + "&sorttype=" +
sort_type + "&query=" + query,
success: function(data) {
$('tbody').html('');
$('tbody').html(data);
}
})
}
}
我的路线没有任何中间件:
Route::get('/pagination/fetch_data', 'User\SearchOrdersController@fetch_data');
不需要“获取”的 csrftoken!
为什么这段代码在另一个 laravel 项目中有效,而不是在这个项目中?
谢谢
问候
已解决,
这些错误在 Laravel.log
storage/laravel/laravel.log
Laravel Ajax“获取”方法 - 错误 500
您好, 我做了 2 个 laravel 项目,一个用于测试 ajax 工作正常,另一个具有相同 ajax 的项目给出错误 500。
这是我的控制器
class SearchOrdersController extends Controller
{
function fetch_data(Request $request)
{
if ($request->ajax()) {
$sort_by = $request->get('sortby');
$sort_type = $request->get('sorttype');
$query = $request->get('query');
$query = str_replace(" ", "%", $query);
$orders = Order::query();
if (is_numeric($query)) {
$orders->where('amount', '<', $query);
} elseif (!empty($query)) {
$currency = Currency::where('name', 'like', '%' . $query . '%')->first();
if (!is_null($currency)) {
$orders->where('currency_id', $currency->id);
}
}
$data = $orders->orderBy($sort_by, $sort_type)->paginate(6);
return view('panel.user.order.pagination_data')->with(['data' => $data])->render();
}
}
}
我的 javascript :
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$(document).ready(function() {
function fetch_data(page, sort_type, sort_by, query) {
$.ajax({
url: "/pagination/fetch_data?page=" + page + "&sortby=" + sort_by + "&sorttype=" +
sort_type + "&query=" + query,
success: function(data) {
$('tbody').html('');
$('tbody').html(data);
}
})
}
}
我的路线没有任何中间件:
Route::get('/pagination/fetch_data', 'User\SearchOrdersController@fetch_data');
不需要“获取”的 csrftoken! 为什么这段代码在另一个 laravel 项目中有效,而不是在这个项目中?
谢谢 问候
已解决, 这些错误在 Laravel.log
storage/laravel/laravel.log