widget – samostane pouziti sablon
- arron
- Člen | 464
@wdolek: On tam jisty rozdil je. Widget se pouziva ve smyslu control (dokonce mam pocit, ze widget je v nove verzi nette deprecated), coz je neco, co se umi vykreslit. Zatimco komponenta se vykreslit nemusi umet (viz. komponenta a control).
- macesko
- Člen | 12
no tak dejme tomu, ze mam jednoduchou aplikaci, ktera do templatu doda data z db jako obsah a pak chci vypisovat nejake informace do sidebaru. Pro nektere stranky treba hledaci formular, submenu, novinky… pro dalsi treba novinky a anketu. Chapu spravne, ze toto resi ty komponenty. Nemohli byste mi nekdo nazorne ukazat jak to definovat a zaregistrovat do templatu? Dekuji mnohokrát.
- Vojtěch Dobeš
- Gold Partner | 1316
Bez presenterů by mohlo fungovat tak, že makru {control}
předáš libovolnou instanci nějaké tvojí třídy, která se ti bude
o nějaký ten požadovaný efekt starat. Na té pak makro zavolá metodu
render
(nebo render<Neco>
). Příklad:
class MyComponent
{
public function render()
{
echo 'hello';
}
}
U „chystání“ šablony:
$template->myComponent = new MyComponent;
A v šabloně samotné:
{control $myComponent}
To se přeloží na $myComponent->render();
a mělo by to
fungovat, protože pokud je parametrem makra control
objekt, nijak
se netestuje jeho třída, může to být cokoliv. Podotýkým, že jsem to
netestoval:)
Editoval vojtech.dobes (26. 10. 2010 22:39)