IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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í.

Diskuze: Porušení konceptu MVP

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Neaktivní uživatel:22.3.2015 7:46

Zdravím. Nejsem v Nette žádný expert (vlastně ani obyčejný uživatel), takže mě poněkud zarazil Nette\Forms. V takové metodě jako je (oficiální dokumentace):

protected function createComponentRegistrationForm(){
        $form = new UI\Form;
        $form->addText('name', 'Jméno:');
        $form->addPassword('password', 'Heslo:');
        $form->addSubmit('login', 'Registrovat');
        $form->onSuccess[] = array($this, 'registrationFormSucceeded');
        return $form;
}

Nejedná se o porušení samotného konceptu MVP? Ty volané metody tam přece nemají co dělat - to má být buď v pohledu komponenty, popřípadě pohledu presenteru, ne? Samozřejmě v HTML tvaru. Jestli se mýlím, mohl by mi to někdo vysvětlit? :)

Odpovědět
22.3.2015 7:46
Neaktivní uživatelský účet
Avatar
d4rkw34v3r
Tvůrce
Avatar
d4rkw34v3r:22.3.2015 10:26

Touhle továrničkou si vytvoříš pouze komponentu, kterou pak můžeš někde (v šabloně) vykreslit. Jak ji vykreslíš, už záleží na tobě. Tohle je pouze definice formuláře.

 
Nahoru Odpovědět
22.3.2015 10:26
Avatar
Odpovídá na d4rkw34v3r
Neaktivní uživatel:22.3.2015 10:36

Můžu si ty texty definovat až v šabloně?

Nahoru Odpovědět
22.3.2015 10:36
Neaktivní uživatelský účet
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
d4rkw34v3r:22.3.2015 10:42

Těmi texty myslíš Jméno:, Heslo: a Registrovat?

 
Nahoru Odpovědět
22.3.2015 10:42
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
d4rkw34v3r:22.3.2015 10:45

Ono takhle, proč bys to psal až v šabloně, když ti tohle vygeneruje HTML kód za tebe? Navíc když tam budeš mít nějakou validaci, tak k tomu máš přidaný i JSON pro javascript.

Pokud chceš psát sám tato pole, můžeš využít low-level formuláře, které jsou popsané v dokumentaci

 
Nahoru Odpovědět
22.3.2015 10:45
Avatar
Odpovídá na d4rkw34v3r
Neaktivní uživatel:22.3.2015 10:49

Mno a tím se dostáváme k otázce této diskuze - není to porušení MVP?

Nahoru Odpovědět
22.3.2015 10:49
Neaktivní uživatelský účet
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
d4rkw34v3r:22.3.2015 10:53

Nevím, co tím přesně myslíš. Však definice a vlastní vykreslení probíhá na odlišných vrstvách.

 
Nahoru Odpovědět
22.3.2015 10:53
Avatar
Odpovídá na Neaktivní uživatel
Matúš Petrofčík:22.3.2015 10:55

Ja sa do nette vôbec nevyznám, ale napadla ma jedna otázka trochu mimo túto tému: Jak sa potom doplnaju k formuláru css triedy, alebo modifikuje formulár v šablone keď toto takto vypľuje vygenerovaný formulár? (ak som to správne pochopil)

Nahoru Odpovědět
22.3.2015 10:55
obsah kocky = r^2 ... a preto vlak drnká
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Matúš Petrofčík
d4rkw34v3r:22.3.2015 10:56

Můžeš si napsat vlastní renderer, pokud máš více formulářu, u kterých budeš chtít mít stejné rozložení prvků a nebo využít ručního vykreslení. Jinak css třídy a další věci můžeš doplňovat pomocí metod setHtmlID ( doplní id=""), setAttribute() apod.

Editováno 22.3.2015 10:58
 
Nahoru Odpovědět
22.3.2015 10:56
Avatar
Odpovídá na d4rkw34v3r
Matúš Petrofčík:22.3.2015 11:03

Ak s tým pracuješ, nie je podľa teba jednoduchšie napísať si ten formulár rovno do šabony namiesto generatora?

Nahoru Odpovědět
22.3.2015 11:03
obsah kocky = r^2 ... a preto vlak drnká
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Matúš Petrofčík
d4rkw34v3r:22.3.2015 11:09

Nejsem žádnej expert, nicméně si myslím, že je lepší si to nechat vygenerovat, protože stejně většinou potřebuješ doplnit i různý validační pravidla. Formuláře v nette mají rozmanitou sadu vlastních pravidel, se kterými spolupracuje i předpřipravený JS, takže se ti v základu funguje i javascriptová validace, podle pravidel, který sis nadefinoval. Mrkni na seriál na zdrojáku: http://www.zdrojak.cz/…e-formulare/
Je teda hodně starej, ale uvidíš tam alespoň základní info o formulářích

 
Nahoru Odpovědět
22.3.2015 11:09
Avatar
Nahoru Odpovědět
22.3.2015 11:13
obsah kocky = r^2 ... a preto vlak drnká
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 12.