Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

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

Vedomosti v hodnote stoviek tisíc získaš za pár korún

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.

Kúpiť tento kurz

Kúpiť všetky aktuálne dostupné lekcie s funkciou odovzdávanie úloh iba za 3 415 kreditov
Aktuálny stav konta 0 kreditov
Kúpou tohoto balíčku získaš prístup ku všetkým 48 článkom (48 lekcií) tohoto kurzu.

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)

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ť.

Článok pre vás napísal 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. :-)
Aktivity