Java týden
Procvič si angličtinu zdarma s naším americkým e-learningem! Learn more
Pouze tento týden sleva až 80 % na celý Java e-learning!

Lekce 21 - E-shop v Nette - Filtrování a řazení produktů

V minulém tutoriálu o tvorbě E-shopu v Nette jsme do layoutu vyrenderovali interaktivní stromové menu s kategoriemi produktů. V dnešním dílu se budeme věnovat právě výpisu produktů do kategorií, čímž produkty pomalu opouštíme.

Dosáhneme tohoto výsledku:

Zobrazení produktů v kategorii

Model

Pro výběr produktů přidáme několik metod do naší třídy ProductManager.

app/EshopModu­le/model/Produc­tManager.php

Produkty budeme vyhledávat podle fráze (např. "květináč"), podle toho zda jsou skladem, podle minimální a maximální ceny a také podle toho, na jaké stránce výsledků vyhledávání se nacházíme. Pokud budeme vypisovat například 6 produktů na stránku a budeme na 9. stránce, zajímají nás výsledky v pořadí 46-54. Výsledky budeme řadit podle hodnocení, ceny nebo data, sestupně nebo vzestupně, jak uživatel určí. Můžeme také zadat kategorii, ve které chceme vyhledávat. Na začátek si definujeme konstanty pro různé druhy řazení:

...

/** Konstanty pro různé možnosti seřazení produktů. */
const
    ORDER_RATING = 'rating',
    ORDER_LOWEST_PRICE = 'lowest_price',
    ORDER_HIGHEST_PRICE = 'highest_price',
    ORDER_NEWEST = 'newest';
...

getProducts()

Jistě tušíte, že databázový dotaz bude poměrně komplikovaný. Ve finále nás bude zajímat


 

...konec náhledu článku...

Komerční článek (licence no-reselling)

Komerční článek (licence no-reselling)

Tento článek vznikl na základě mnohaletých zkušeností v oboru a popisuje vývoj profesionálního komerčního produktu nebo jeho součásti, kterou lze přímo využít za účelem zisku nebo proniknutí do komerční sféry IT odvětví.

Tyto vrcholové znalosti zpřístupňujeme samozřejmě pouze některým členům komunity, kteří se mají zájem vypracovat na profesionály v oboru a proto jsou k dispozici pouze za body. Kód z článku můžete použít pro jeden svůj komerční projekt. Není ho však možné přeprodávat (jednou zakoupit a poté prodat dálev několika projektech). Pokud potřebujete širší využití kódu, rádi se s vámi domluvíme na komerční licenci. Více informací naleznete v článku Licence.

Jste připraveni stát se profesionály v oboru? Stačí kliknout.

Popis článku

Požadovaný článek má následující obsah:

V tutoriálu implementujeme do modelu logiku pro filtrování produktů podle fulltextové fráze, cenového rozmezí, kategorie, dostupnosti a dalších parametrů.

Omezená nabídka: Nauč se vše a ušetři

Koupit články a funkce postupně a po jednom 1348 bodů
Koupit celý kurz se všemi články a funkcemi za exkluzivní cenu 1146 bodů
Na svém účtu máš aktuálně 0 bodů
Koupí tohoto výhodného balíčku získáš přístup ke všem 51 článkům s kontrolou a certifikací a ještě navíc ušetříš 505 Kč. Nabídka je omezená pouze pro první články z kurzu a obsahuje exkluzivní slevu 15%.
1146 bodů získáš za přidání svého článku na síť nebo odpovídá 3 361 Kč 2 857 Kč

Koupit pouze tento článek

Pozor, pokud si koupíš pouze tento článek, ztratíš nárok na speciální slevu 15% na balíček všech článků.

Pro přístup k článku potřebuješ 28 bodů
Na svém účtu máš aktuálně 0 bodů
28 bodů získáš za přidání svého článku na síť nebo odpovídá 70 Kč

Před koupí tohoto článku je třeba koupit předchozí díl

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium no-reselling, koupí článku souhlasíš se smluvními podmínkami.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem

 

Článek pro vás napsal Jindřich Máca
Avatar
Autor se věnuje převážně webovým technologiím, ale má velkou zálibu ve všem vědeckém, nejen ze světa IT. :-)
Předchozí článek
E-shop v Nette - Stromové navigační menu
Všechny články v sekci
Kompletní e-shop v Nette
Miniatura
Následující článek
E-shop v Nette - Výpis produktů
Aktivity (10)