PHP týden Předvánoční slevová akce
Další šance dokončit svůj projekt a získat ceny v hodnotě 10.000 Kč! Pokračování úspěšné letní soutěže - ITnetwork winter
Využij předvánočních slev a získej od nás 20 % bodů navíc zdarma! Zároveň také probíhá PHP týden se slevou na e-learning až 80 %

Lekce 17 - E-shop v Nette - Komponenty nejen pro detail produktu

Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem.
Vydávání, hosting a aktualizace umožňují jeho sponzoři.

V minulém tutoriálu o tvorbě E-shopu v Nette jsme si připravili presentery pro detail produktu včetně přidávání uživatelských recenzí. V dnešním dílu si připravíme vše potřebné na přidání šablony pro detail produktu, což jsou především zbrusu nové komponenty :)

Komponenty

Jak jsem již předesílal, dnešní díl bude hodně zaměřený na komponenty. Ukážeme si především automaticky generované továrničky na komponenty s autowiringem a jejich porovnání s klasickou instanciací apod. Takže konec řečí a hurá do práce!

app/components/Pri­ceControl.php

Začneme "globální" komponentou pro vykreslování ceny. Globální je z toho důvodu, že ji budeme používat i při výpisu všech produktů, v košíku i u jeho ikony v podstatě na každé stránce atd. Začneme klasickým konstruktem komponenty s jedním setterem navíc:

<?php

namespace App\Components;

use Nette\Application\UI\Control;
use Nette\Utils\ArrayHash;

/**
 * Pomocná komponenta pro vykreslování ceny.
 * @package App\Components
 */
class PriceControl extends Control
{
    /** Cesta k souborům šablon pro tuto komponentu. */
    const TEMPLATE_PATH = __DIR__ . '/../templates/components/Price/';

    /** @var string Měna, ve které se má cena vykreslit. */
    private $currency;

    /**
     * Setter pro měnu, ve které je cena uvedená.
     * @param string $currency měna
     */
    public function setCurrency($currency)
    {
        $this->currency = $currency;
    }

...

Zde asi není nic zvláštního, tak se posuneme k metodám pro vykreslování (renderování).


 

...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 dodáme do e-shopu hlavně nové komponenty, které nám v příštích dílech pomohou nejen s vykreslováním detailu produktu.

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 1051 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říš 740 Kč. Nabídka je časově omezená a platí pro všechny články v kurzu. Nakup teď a získej limitovanou 22% slevu.
1051 bodů získáš za přidání svého článku na síť nebo odpovídá 3 361 Kč 2 621 Kč

Koupit pouze tento článek

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 - Logika detailu produktu
Všechny články v sekci
Kompletní e-shop v Nette
Miniatura
Následující článek
E-shop v Nette - CSS a JavaScript detailu produktu
Aktivity (14)