laravel de ürün bilgilerini sıralama fonksiyonu içinde nasıl çekebilirim ya da aşağıda bahsettiğimi başka nasıl yapabilirim
db den olmayan bi puanlama sistemi var normalde pure php kullanırken şu şekilde yapıyordum;
Ürünleri çek,
ürün özelliklerini array e eşitle,
array de puan adında yeni bir indis oluştur,
ürün sıralamasını puan a göre büyükten küçüğe yap
ama bunu laravel de yapamıyorum alaka olarak geçen bi ürün sıralaması var normalde orderby id yapıyor bunu bahsettiğim şekle dönüştürmek istiyorum ama ürünleri nasıl çekip array e atabilirim bunu bulamadım yardımcı olabilecek var mı sıralama vs kısımlarını ben yazabilirim php bilgim var ancak laravel de ürünleri bir türlü çekemedim
örnekle anlatmak gerekirse
ürün bilgisi çekildi array e atıldı,
çekilen ürün bilgisine göre her ürüne puan verildi örneğin 1. ürün 6, 2. ürün 5, 3. ürün 8 puan
ürün sıralaması değiştirildi ekrana artık ilk 3. ürün sonra 1. ürün sonra 2. ürün basılcak
Laravel orderby kullanmadan ürün sıralama yardım
4
●168
- 14-07-2022, 22:16:01
- 14-07-2022, 22:52:21
$products = Product::all(); $products_list = $products->toArray(); foreach($products_list as &$item){ /* yapılacak işlemler */ $item['puan'] = rand(1,15); } $keys = array_column($products_list , 'puan'); array_multisort($keys, SORT_DESC, $products_list ); return view('front.homepage',compact('products_list')); - 16-07-2022, 11:30:38Eloquent ile cektigin data collection olarak geliyor. Collection methodlari ile istedigini rahatca yaparsinAeknasd145 adlı üyeden alıntı: mesajı görüntüle
https://laravel.com/docs/9.x/collections - 19-07-2022, 00:51:19yaptım hocam, puan değeri sabit değil formdan gelen sonuca göre hesaplayan bir algoritma var, o yüzden sql e kaydedemiyordum, teşekkürler yine de çözüldü sorundinarbey adlı üyeden alıntı: mesajı görüntüle