7.2.1
Zprostředkování katalogu produktů
Třída ProductController zprostředkovává pomocí jeho metod katalog produktů. Jména metod jsou
automaticky mapovány na příslušnou URL adresu. Parametry metod odpovídají parametrům URL
adresy. Produkty jako takové jsou v systému uloženy jakou soubor informací v různých databázových
tabulkách. Uzel stromové struktury stránky je uložen v tabulce Node, obsah a základní informace poté
v tabulce Document (jeden uzel může být tvořen např. více jazykovými verzemi). Informace
o produktu je obsažena v tabulce SKU. Každý produktový typ má navíc svoji vlastní tabulku, v níž
jsou uloženy vlastnosti specifické pro daný typ (např. typ zpracování kávy). Veškeré tyto informace
jsou spojeny pomocí Kentico API. Následující úryvek kódu demonstruje získání produktů dle
identifikátoru kategorie.
Obrázek 19: Získání produktů pomocí Kentico API
Návratový typ reprezentuje pouze dotaz do databáze. Po zavolání metody ToList se tento dotaz
provede a máme k dispozici kolekci konkrétních uzlů (v našem případě produktových uzlů). Díky
metodám uzlů s prefixem „Where“ můžeme dotaz dále specifikovat. Tento přístup uplatňuje
například implementace produktového filtru. Na straně serveru byly s použitím Kentico API
implementovány tyto metody:
Index (adresa api/product) – Metoda získává seznam produktů pod danou kategorií.
Pokud je zadán i parametr filter, provede filtrování výsledků dle zadané hodnoty.
Návratovým typem uzlu je seznam produktů.
Search (adresa api/product/search) – Metoda vyhledává mezi všemi produkty dle
zadaného řetězce. Navrácen je seznam produktů obsahujících v názvu zadaný řetězec.
Detail (adresa api/product/detail) – Metoda vrací detailní pohled na produkt dle
zadaného identifikátoru. Návratovým typem je konkrétní produkt obsahující detailní
popis ve formátu HTML a seznam adres obrázků.
Do'stlaringiz bilan baham: |