Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ładowanie akcji oraz widoków w FW, Dyskusja
menic
post
Post #1





Grupa: Zarejestrowani
Postów: 493
Pomógł: 0
Dołączył: 14.06.2003
Skąd: Tomaszów Lubelski/Rzeszów

Ostrzeżenie: (0%)
-----


Będe tu zamieszczał pytania odnoscie działania FW, oraz róznych kruczków (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Pierwsze z nich to pobieranie aktualnej akcji i modułu. Moge to zrobić pobierając z adresu w Kontrolerze module oraz action. Jesli wartosci sa puste podstawiamy domyslne. Bułka z masłem. Jednak co jesli rozszerzymy funkcjonalnosc o znaną funkcje forward()? Przekierowywuje ona do innego modułu i/lub akcji bez zmiany parametrów w adresie. I co teraz? W adresie mamy dane dotyczącego poprzedniej akcji, wiec pobieranie z adresu nie ma sensu. W tym wypadku odpada pobieranie z adresu. Jak to najlepiej rozwiązać? Jak wy to widzicie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

EDIT: Zmieniłem nazwe tematu, na bardziej adekwatny (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował menic 12.01.2007, 15:23:36
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
arecki
post
Post #2





Grupa: Zarejestrowani
Postów: 222
Pomógł: 35
Dołączył: 6.02.2005

Ostrzeżenie: (0%)
-----


Przyglądam się Waszej i snuje wnioski i pomysły (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Wnioski takie mam, że albo lubicie sobie komplikować sprawę albo po prostu 'tak Wam wygodnie'. Oczywiście każdy ma to co lubi i pisze FW dla siebie i pod siebie. Z resztą sam też się w to bawię i więcej mam przyjemności z budowy FW niż z samego korzystania z niego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .

Co do wywoływań akcji to akurat ja sobie to zupełnie inaczej obmyśliłem. Wydaje mi się że sporo prościej ale po kolei wytłumaczę. Generalnie jest sobie kontroler. Ma on funkcję statyczną runEvent() z parametrami : jaką klasę i metodę wywołać oraz jakie parametry przesłać do niej. Zwraca to co dana metoda wypluje. Oczywiście sam kontroler ma w sobie mechanizmy sprawdzające czy się wywołania nie zapętlą itp. Ma również obiekty odpowiadające za cache'owanie obiektów akcji (czy jak ja to nazywam 'eventów'), za dane sesji no i za widok.

Metodę runEvent można wywołać z każdego miejsca FW tak więc odpada nam konieczność robienia forward() i martwienia się o to czy można i jak. Dodatkowo daje nam możliwość kontrolowania kazdej akcji z poziomu kontrolera (chyba zamieszałem:) ). Każda klasa obsługująca zdarzenia musi dziedziczyć po bazowej klasie do zdarzeń. Dzięki temu każda z akcji ma możliwość dodania zmiennych wyświetlanych w widoku czy modyfikacji zmiennych sesyjnych. Dopiero później kontroler przekazuje do widoku sterowanie z zebranymi danymi. Jedyne co akcja musi zrobić to zdefiniować nazwę szablony do wyświetlenia i tylko ta akcja która została wywołana z router'a. Dodatkowo mam możliwość zdefiniowania czy daną akcję mogę wywołać przez URL'e czy tylko i wyłącznie przez metodę runEvent.

Jedyne co mnie natchnęliście to muszę się zastanowić czy chcę aby klasy obsługujące zdarzenia miały możliwość definiowania własnych części widoku a nie tylko danych do wyświetlenia.
Go to the top of the page
+Quote Post

Posty w temacie
- menic   Ładowanie akcji oraz widoków w FW   11.01.2007, 16:09:16
- - marcin96   W moim frameworku mam to tak rozwiązane, że każdy ...   11.01.2007, 16:41:49
- - Cysiaczek   A co gdyby przenieść sterowanie z kodu d...   11.01.2007, 17:27:31
- - menic   @Cysiaczek: Zgadzam sie z Toba, ale chyba nie do k...   11.01.2007, 17:54:44
- - Cysiaczek   Przez forward rozumiem uruchomienie innego łańcuch...   11.01.2007, 18:19:55
- - menic   Kod który przedstawiłem dla funkcjiforward jest sz...   11.01.2007, 19:19:43
- - Cysiaczek   Najlepszy moim zdaniem (ale do średnich i dużych) ...   12.01.2007, 09:25:23
- - menic   Nie wiem czy sie rozumiemy do konca. Widok jest p...   12.01.2007, 12:05:12
- - Cysiaczek   Wprowadź obiekt kolekcji uruchamianych modu...   12.01.2007, 12:45:59
- - menic   Nie za bardzo rozumiem. Obiekt kolekcji? Co to   12.01.2007, 15:34:55
- - Cysiaczek   Obiekt, który coś przechowuje i pozwala na przeglą...   12.01.2007, 16:16:54
- - Turgon   Czyli na polskie tłumacząc napisz sobie rejestr ;]...   12.01.2007, 16:58:10
- - menic   Ufff.... Już sie uporałem, bez rejestru Troche ...   12.01.2007, 20:25:31
- - Turgon   Tzn. tak ;] Np. mam newsy i podpinam tam obiekt ...   14.01.2007, 10:43:49
- - menic   Czyli zawartość szablonu news wczytujesz do zmienn...   14.01.2007, 12:06:53
- - Turgon   Tak ;] To jest wygodne i szybkie Tak jest np. w C...   14.01.2007, 20:12:44
|- - menic   Cytat(Turgon @ 14.01.2007, 20:12:44 )...   14.01.2007, 20:45:38
- - Cysiaczek   Ja z kolei includuję : )   14.01.2007, 20:23:16
- - Turgon   menic: Bez różnicy ;] Sprawa gustu przedewszystkim   14.01.2007, 22:07:23
- - menic   W praktyce, podejrzewam jest niewielka róznica jes...   14.01.2007, 22:12:06
- - widmogrod   Witam, zaprezentuje moje rozwiązanie tego problemu...   15.01.2007, 15:05:08
- - menic   Szczerze? Nie rozumiem o czym piszesz Co masz po...   15.01.2007, 18:21:25
- - widmogrod   u mnie bloki są wynikiem akcji .. Po sparsowaniu ...   15.01.2007, 19:56:23
- - menic   Smieszne masz nazewnictwo wszystkiego. U mnie sa t...   15.01.2007, 20:58:03
- - widmogrod   CytatSmieszne masz nazewnictwo wszystkiego. U mnie...   15.01.2007, 23:22:03
- - arecki   Przyglądam się Waszej i snuje wnioski i pomysły . ...   16.01.2007, 00:20:00
- - menic   View dziediczy po AppControlerze, stąd dostepnośc ...   16.01.2007, 07:50:54
- - widmogrod   @menic - i już wszystko jasne ( ciekawe podejście ...   16.01.2007, 13:42:02


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 22:46