Pár dotazů hlavně na davida
- Patrik Votoček
- Člen | 2221
Jelikož právě dodělávám poslední úpravy na jednom projektu který bych chtěl uvolnit (možná už koncem týdne, nejdéle však koncem srpna) i pro ostatní. Tak bych rád věděl pár věcí.
Nové šablony
Existuje někde popis a informace o tom jak přesně fungují ty nové
šablony? Mám základní ponětí (podle toho co se říkalo na poslední PS
v brně) jak to asi je ale nejsem si jist a hodilo by se mít někde na jednom
místě napsané co a jak. Bohužel jsem se však nedostal na PS do Pardubic kde
o tom asi byla přednáška. Takže otázka je jednoduchá je to někde
sepsáno? (jde mě hlavně o dědičnost šablon a
nutnost/nenutnost psát extends
+ řešení
$layout
).
Je správné že jsem takřka všude nahradil konstrukci:
public function actionDefault()
{
$form = new AppForm($this, "loginForm");
...
$this->template->form = $form;
}
a v šabloně pak
{!$form}
za
public function createComponentLoginForm($name)
{
$form = new AppForm($this, $name);
...
return $form;
}
a v šabloně
{control loginForm}
Stable verze 0.9 resp. 0.9.1
Někde jsem tu na fóru narazil že by měla brzo být stable verze 0.9/0.9.1 . Bude? Kdy? Protože se nechci ochuzovat o možnosti a novinky které nabízí 0.9tka a zase mě příde blbé dělat závistlost na vývojové verzi (na přesně dané revizi).
Validace formuláře v modelu
více zde: https://forum.nette.org/…iewtopic.php?…
PS: Možná mě ještě něco napadne tak to doplním.
- Jan Tvrdík
- Nette guru | 2595
vrtak-cz napsal(a):
Nové šablony
Takže otázka je jednoduchá je to někde sepsáno?
Nevím o tom. Prostudij si příklady v distribuci a jeden Davidův post.
Je správné že jsem takřka všude nahradil konstrukci:
Ano.
Stable verze 0.9 resp. 0.9.1
Protože se nechci ochuzovat o možnosti a novinky které nabízí 0.9tka a zase mě příde blbé dělat závistlost na vývojové verzi (na přesně dané revizi).
Proč se domníváš, že při používání 0.9 máš kód závislý na přesně dané revizi? Pokud nepoužiješ ultra-experimentální věci (většinou věci mladší než týden), tak je vše kompatibilní a případně změny nejsou problém.
Editoval Jan Tvrdík (4. 8. 2009 13:57)
- Patrik Votoček
- Člen | 2221
Jan Tvrdík napsal(a):
Nevím o tom. Prostudij si příklady v distribuci a jeden Davidův post.
Dík za nakopnutí úplně jsem na to vlákno zapoměl.
A tak mě napadá jak je to s tím
$this->template->setLayou("@MyLaout.phtml");
a jaký je
rozdíl mezi:
layout:
...
<body>
{block #content}{/block}
</body>
...
šablona:
{block #content}Text{/block}
a layout:
...
<body>
{include #content}
</body>
...
???
Je správné že jsem takřka všude nahradil konstrukci:
Ano.
Super
Proč se domníváš, že při používání 0.9 máš kód závislý na přesně dané revizi? Pokud nepoužiješ ultra-experimentální věci (většinou věci mladší než týden), tak je vše kompatibilní a případně změny nejsou problém.
Asi jsme se špatně pochopili. Ale když to vemu tak jak na to koukáš ty tak příjde revize ve které bude nějáky BCbrake a mě to kvuli tomu přestane fungovat takže bych to stejně musel zakonzervovat na pár otestovaných revizích. Jinak zatím mám nette v svnku jako external tzn. 3× denně dělám update takže dělám vždy na aktuální revizi která je v svnku nette (stejně i dibi). Prostě nemám jistotu že když si někdo stáhne mojí app a aktuální revizi nette že to bude 100% funkční. Stable verze je stable verze. (Teď by někdo mohl namítnout že mám teda používat 0.8 ale já nechci být ochuzen o featury které jsou v 0.9 ať už třeba nové šablony nebo super továrnička.
V souvyslosti s tím mě napadá jestli by nemohla existovat stable verze 0.9a/0.9.1a která by byla vpodstatě totožná s normální ale nebyly by v ní Deprecated věcičky. (Asi to bude vždy první revize po vydání stable větve).
- romansklenar
- Člen | 655
vrtak-cz napsal(a):
V souvyslosti s tím mě napadá jestli by nemohla existovat stable verze 0.9a/0.9.1a která by byla vpodstatě totožná s normální ale nebyly by v ní Deprecated věcičky. (Asi to bude vždy první revize po vydání stable větve).
Tohle není vůbec špatný nápad, i to tak teď s 0.8 bylo, ale tato revize jen nebyla nijak v svn otagována.
- Jan Tvrdík
- Nette guru | 2595
Osobně nemám s BC breaky problém, protože pokud se mě velmi
vyjímečně nějaký dotkne, tak to lze většinou opravit do 5 minut (např.
přidat do BasePresenteru
parent::startup()
).
Poslední a snad jediný BC break, který se mě nějak dotkl byla revize
203.
- Patrik Votoček
- Člen | 2221
Jan Tvrdík napsal(a):
Osobně nemám s BC breaky problém, protože pokud se mě velmi vyjímečně nějaký dotkne, tak to lze většinou opravit do 5 minut (např. přidat do
BasePresenteru
parent::startup()
). Poslední a snad jediný BC break, který se mě nějak dotkl byla revize 203.
Souhlasím prakticky nenastala situace kdy by se mě něco takového dotklo. Ale stát se to může a už jenom to že se to stát může je důvod k řešení. Možná jsem moc paranoidní. Ale opatrnost nadevše.
- kravčo
- Člen | 721
vrtak-cz napsal(a):
public function createComponentLoginForm($name) { $form = new AppForm($this, $name); ... return $form; }
a v šabloně
{control loginForm}
Malo by stačiť:
public function createComponentLoginForm()
{
$form = new AppForm;
// ...
return $form;
}
teda netreba uvádzať meno, keďže ho továrnička pozná a tiež sa
postará o pridanie do stromu komponentov (ak treba), teda konštruktor
AppForm
u môže byť úplne bez parametrov…