DusLerforum adlı üyeden alıntı: mesajı görüntüle
Merhaba e-ticaret sitesi kodluyoruz.

http://prntscr.com/vucff0 bu şekilde kategoride ürüne özel filtreler gelecek

her kategoride farklı filtreler gelecek

örnek

bilgisayar kategorisi ise cpu ram ekran vs


ayakkabı ise renk beden numara

gibi aktif ürün listesindeki özellikleri filtreleyecek

performans ve hız önemli

bunu yapabileceğim paket mantık algoritma önerisi olan var mıdır?

teşekkürler
Olay tamamen DB tarafinda bitiyor. Bunu hazir saglayacak paket var mi Laravelde bilmiyorum. Dun benzer bir is uzerinden calisiyordum, daha tam bitmedi.

Asagidaki resimde goruldugu gibi 4 tane tablom var.
features tablosunda ozellikleri tutuyorum. Mesala feature_groups tablosuna monitor eklenir ve monurun ozelligi olarak features tablosuna "ekran boyutu" eklenir. feature_values tablosuna da ozelliklerin degerleri eklenir. Ornegin 24,25,26 inc gibi.

Sonra bu ozellik degerleri product_features tablosuna eklenir. product_features tablosu many-to-many icin pivot tablo oluyor burada.

Kategorilere ait urunleri filterlerken product_features tablosundaki datalardan yararlanarak custom filtrelemeler olusturabilirsin.


Hiz konusunnda soyle bir gelistirme yapabilirsin. Kategorilere ait ozel filtreleri surekli DB'den cekmek yerine json olarak Redisde tutabilirsin, urunleri ise Elastich'e indexlersin. Baslangicda cok bir hiz farki olmaz belki ama sistemde urun sayisi arttikca iliskiler yavaslatacaktir illaki. Ayrica tablolarda dogru indexleme bile tek basina hiz kazandirir.