Problem:
Ketika saat saya memperbarui keranjang dengan menambah atau mengurangi jumlah (dan memuat halaman dengan keranjang lagi) urutan item berubah. Apakah ada cara untuk mengatur pesanan? Dengan contoh abjad pada nama item? Atau hanya dengan memesan item yang awalnya ditambahkan ke keranjang?..
Solusi Pertama :
ketika item/produk dalam keranjang diperbarui, ia akan menarik item itu dari keranjang dan memperbarui nilainya dan kemudian mendorongnya kembali ke keranjang sehingga item yang terakhir diperbarui akan selalu berada di urutan terakhir. Jika Anda ingin mengurutkannya misalnya menurut abjad, ingatlah itu saat memanggil Cart:: getContent();
itu mengembalikan instance Laravel Collection sehingga Anda dapat menggunakan beberapa metode penyortirannya sebelum menampilkannya agar sesuai dengan kebutuhan Anda. Seperti dibawah ini:
$cartCollection = Cart::getContent();
$sorted = $cartCollection->sortBy(function ($product, $key) {
// your sorting codes here
});
Atau Anda dapat mengurutkannya dengan php daripada metode koleksi laravel. Untuk informasi lebih lanjut, tautan ini mungkin berguna:
https://laravel.com/docs/5.1/collections#method-sort
http://php.net/manual/en/function.asort.php
Soulusi Kedua:
Anda dapat menggunakan Laravels sort()
, contoh:
public function getCart()
{
$cartCollection = Cart::getContent();
$cart = $cartCollection->sort();
return view('shop.cart', compact('cart'));
}
dan ketika mengubah jumlah quantity barang di keranjang tetap sama seperti sebelumnya.
order of the items after updating always changes darryldecode laravel shopping cart