Ajax login fix#40
Conversation
fccf624 to
39ef00a
Compare
|
@filipjakub Dobry den, dekuji mockrat! Opravy jsem aplikoval do sve vetve. Vsiml jsem si, ze jste pridal script na Nette forms, coz zapne Nette validaci. Ja jsem to vetsinou resil vlasnim zpusobem (vlastnima validacema - cimz se vytvari kolo), jelikoz se mi nikdy nepodarilo to napojit na formular, aby se ta hlaska zobrazila primo u inputu, ke kteremu patri. Vyskakujici nenastylovane okno neni moc UX friendly dle me. Netusil byste jak toho docilit? Zkousel jsem jeste v 5db6029 pridat ajaxove nacitani paginatoru, ale nejspise to asi nefunguje tak, jak si to predstavuji. Netusil byste co je tam spatne? Jeste jednou moc dekuji. |
|
Errory přimo k inputům se dělají například takhle: V rámci vyhodnocení formuláře v presenter/komponentě pak klasicky $form->addError(), avšak ne takto na formulář, ale na přímo na prvek: Takto to jde pro každý element formuláře. "Globální" chyby formuláře ($form->addError) se pak vypíšou přes Na tu paginaci zkusím mrknout zítra, určitě to bude nějaká drobnost @Chrynn |
|
@filipjakub Dekuji za vysvetleni. Ja jsem to prave pouzival, presne jak to popisujete. Ve vlastni validaci (ve tride bokem nebo Lze provest i toto popisovane chovani? Nebo pokud chci zobrazit hlasku u formulare, musim si udelat vzdy vlastni validaci |
641c2f3 to
5a6e160
Compare
|
Zdravím, tak paginace by měla být funkční zde 9cfff51. Problém byl v tom, že při odkazu Event:default v n:href se vždy znovu načetla stránka znovu, protože je to actionDefault. Já to přepsal ať to posílá requesty na handlePageChange!, což je ten signál jak jsem zmiňoval. Pozná se tak, že má v latte u odkazu '!'. Co se té validace týče, už asi chápu správně, že chcete odstranit to dialog okno při například nevyplněném heslu? S tím si bohužel moc nevím rady, já ten netteForms nepoužíval, už ani nepamatuju. Jediné co mě napadá, tak vypnout validaci na formuláři, ale to si nejsem jistý, jestli pak budou fungovat ty errory (ikdyž minimálně $form->addError() by měl fungovat). |



Ahoj, chyběli ti v zásadě 2 věci, nette.ajax a netteForms.
nette.ajax zajaišťuje celkově Ajax komunikaci ve spolupráci s redrawControl, umí to samozřejmě mnohem více věcí a netteForms, což se zaměřuje konkrétně na ajax formuláře. Obě věci samozřejmě potřebují jQuery.
Potom akorát chyběl submit button v Login.php, bez toho netteForms nefunguje, a fungovalo by to klasciky s refreshem.
Ještě takové best practice tipy: