Пытается получить products
от productController
с category_id
Как видно удар. Коды являются базовыми AJAX-кодами, сложных вещей нет. Но мой результат всегда нулевой.
ROUTE
Route::post('urun-listele', 'ProductController@listele');
CONTROLLER
public function listele(Request $request)
{
$category_id = $request['category_id'];
$urunler = Product::where('category_id', $category_id)->get();
#var_dump($urunler);
return json_encode([
'urunler' => $urunler
], JSON_UNESCAPED_UNICODE);
}
AJAX
function urunListele(kategori_id) {
var kapsayici = $('#product-info');
$.ajax({
url: 'urun-listele',
type: "POST",
data: {category_id: kategori_id},
dataType: 'json',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
success: function (data) {
var urunler = data['urunler'];
for (var i = 0; i < urunler.length; i++) {
kapsayici.append('<div class="col-md-3 product-detail-item b-white br-10px"><p>' + urunler[i]['title'] + '</p></div>');
}
}
});
}
Как я уже сказал, я не могу получить никаких данных.
var urunler = data['urunler'];
for (var i = 0; i < urunler.length; i++) {
kapsayici.append('<div class="col-md-3 product-detail-item b-white br-10px"><p>' + urunler[i]['title'] + '</p></div>');
}
console.log(urunler);
всегда возвращает 0 объекта. В чем проблема? Заранее спасибо.
РЕДАКТИРОВАТЬ:
я получил Cannot read property 'length' of undefined
при попытке вернуть $ urunler;
$category_id = $request['category_id'];
не могу ничего получить, я думаю.
Например, если я изменю $category_id = 5
это return [object Object],[object Object]
У меня есть 2 объекта с $category_id = 5
.
здесь проблема? $category_id = $request['category_id'];
РЕДАКТИРОВАТЬ2:
$category_id = $request->get('category_id');
$urunler = Product::whereCategoryId($category_id)->get();
return response()->json([
'urunler' => $urunler
]);
Контроллер изменился вот так и работает прямо сейчас.