47. diel - E-shop v Nette - Dokončenie obchodu
V minulom tutoriále o tvorbe e-shopu v Nette sme si sprevádzkovali časť editácia objednávky. Zostáva nám ešte dialóg k editácii údajov osoby zákazníka, na ktorý využijeme jQuery UI dialógu a editácia produktov v objednávke Ajaxu. Dnešný diel je posledným dielom tohto kurzu, takže týmto náš elektronický obchod dokončíme.
Modely
Ako vždy začneme v modeloch.
App / EshopModule / model / OrderManager.php
Tu nám chýba len drobnosť a to zmeniť metódu
updateProductInOrder()
z private na
public:
... /** * Upraví produkt v objednávce. * @param int $quantity nový počet kusů; pokud počet upravíme na 0, produkt se odebere z košíku * @param int $productId ID produktu * @param int $orderId ID objednávky * @throws InvalidArgumentException Pokud je zadán záporný počet kusů produktu. */ public function updateProductInOrder($quantity, $productId, $orderId) { ...
Jednoducho som vopred nepočítal s jej použitím niekde inde, ale nakoniec sa nám bude hodiť.
App / EshopModule / model / PersonManager.php
Najjednoduchší spôsob ako zmeniť údaje zákazníka na objednávke bez
toho, aby sme písali redundantný kód, je uložiť nové údaje metódou
savePerson()
. Budeme chcieť vytvoriť jednotlivé časti osoby
znova, nastaviť im zmenené hodnoty a tie potom nastaviť objednávke.
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Obmedzená ponuka: Nauč sa všetko a ušetri
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium no-reselling, kúpou článku súhlasíš so zmluvnými podmienkami.
Komerčný článok (licencia no-reselling)
Tento článok vznikol na základe mnohoročných skúseností v odbore a opisuje vývoj profesionálneho komerčného produktu alebo jeho súčasti, ktorú možno priamo využiť za účelom zisku alebo k preniknutiu do komerčnej sféry IT odvetvia.
Tieto vrcholové znalosti sprístupňujeme samozrejme iba niektorým členom komunity, ktorí sa majú záujem vypracovať na profesionálov v odbore a preto sú k dispozícii len za kredity. Kód z článku môžete použiť pre jeden svoj komerčný projekt. Nie je ho však možné prepredávať (raz zakúpiť a následne predať ďalej v niekoľkých projektoch). Ak potrebujete širšie využitie kódu, radi sa s vami dohodneme na komerčnej licencii. Viac informácií nájdete v článku Licencia.
Ste pripravení stať sa profesionálmi v odbore? Stačí kliknúť.
Popis článku
Požadovaný článok má nasledujúci obsah:
V tutoriálu implementujeme zmenu údajov zákazníka pomocou jQuery UI dialógu a následne AJAXové obsluhu pre editáciu produktov v objednávke.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.