![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
Często zdaża się, iż aby uzyskać maksymalnie "user-friendly" interfejs robimy coś takiego: Użytkownik wypełnia dane w formularzu i go wysyła. Jeśli wystąpią jakieś błędy, nad formularzem zostaje wyświetlony odpowiedni komunikat, lecz wszelkie wprowadzone przez usera dane pozostają wpisane w pola formularza. Jak Wy rozwiązujecie tego typy problem? Wspomne tylko, iż chodzi mi o rozwiązania obiektowe i maksymalnie elastyczne... bo na if-ach to nie problem coś takiego zrobić "by tylko działało". Może posiadacie jakieś gotowe klasy / biblioteki? Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 56 Pomógł: 0 Dołączył: 23.11.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Veng: u mnie zajmuje sie tym validationService, dziala prawie tak jak opisal to Fido, jednakze z kilkoma roznicami...
W akcji ktora wyswietla formularz tworze instancje validationService, przekazuje jej nazwe nastepnej akcji (jesli dane sa poprawne) reguly walidacji i nazwe zmiennej do ktorej przypisac bledy... I teraz zalozmy taki scenariusz: user zle wpisal haslo uzytkownika, validator zwraca bledy, nie redirectuje... User dobrze wpisal haslo: validator nie zwraca bledow, zamraza (Freeze) Context (a konkretnie tylko POST), redirectuje do nastepnej akcji... W miedzyczasie Context stwierdza obecnosc zamrozonego stanu aplikacji, ustawiajac dane z POST na miejscu nowych POST ( o ile istnieja ). W nowej akcji latwo mozna sprawdzic czy nie nastapilo naduzycie - sprawdzajac z contextu czy akcja ta zostala przekierowana z poprzedniej akcji. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 05:45 |