![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 1 Dołączył: 9.10.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mam formularz rejestracyjny (widok). Są dwa kontrolery: IndexController i EmailController.
W dużym skrócie, co chcę osiągnąć 1) IndexController odpala widok, który wyświetla formularz 2) Po wysłaniu formularza, IndexController zapisuje dane do bazy (za pomocą jakiegośtam modelu) 3) IndexController wywołuje EmailController (robię to za pomocą _forward() ) 4) EmailController pobiera z bazy szablon wiadomości (znowu jakiś model) 5) EmailController wysyła maila (wykorzystałem Zend_Mail) 6) Teraz chcę wyświetlić komunikat, że link z kodem aktywacyjnym został wysłany mailem. Punkty 1-5 mam zrealizowane. Utknąłem na 6). Nie wiem w jaki sposób i w którym miejscu wyświetlić ten komunikat. Nie mogę tego zrobić w EmailController, ponieważ będzie on wykorzystany do wysyłania różnych maili, w różnych "modułach" serwisu - a zatem za każdym razem będzie wyświetlał inny komunikat. Najlepiej gdyby z EmailController dało się "wrócić" do miejsca(kontrolera i akcji) z którego zostal odpalony. Coś w tym stylu:
Próbowałem drugi raz użyć _forward(). ale wtedy działa tylko ten drugi. Siedzę nad tym od ponad 3 godzin. Wymęczyłem dokumentacje ZF, googla i wszelkie znane mi źródła. To mój pierwszy "projekt" z wykorzystaniem ZF i zarazem pierwszy kontakt z MVC. Jestem pewien, że robię jakiś głupi błąd. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 1 Dołączył: 9.10.2003 Ostrzeżenie: (0%) ![]() ![]() |
Kontroler - nie. Natomiast koniecznie potrzebne jest wydzielenie go jako jakiejś klasy. Klasa
pobiera z bazy szablon (przez odpowiedni model), wstawia dane i w zależności od ustawień dla danego szablonu zapisuje wiadomość w archiwum wysłanych (znowu jakiś model. Na pewno wystarczająco duży kawałek kodu żeby to wydzielić jako osobną klasę. Na pewno widok to nie jest (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Gdybym sobie przyjął że ta klasa jest modelem to byłoby dużo łatwiej, ale to nie jest model. Więc zostaje kontroler (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ten projekt traktuje trochę "dydaktycznie" - dlatego zależy mi na tym, żeby nie stosować jakichś obejść. Nie wiem czy dobrze to rozumiem, ale potrzebowałbym do rozwiązania mojego problemu tego łańcuch akcji, którego w ZF nie ma. Ten post edytował mr__y 14.11.2007, 10:48:00 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 09:58 |