Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> generowanie URL w MVC
szuset
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 16.10.2006

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


Witam,

Grzebie troche w tym php i tak się zastanawiam teraz jak rozwiązać problem generowania URL. Wymyślilem sobie takie rozwiązanie, że w klasie akcji będzie definiowane jakie parametry aktualnie przekazane w zapytaniu będą potrzebne do wygenerowania nowego url-a. np. numer strony, rodzaj sortowania, itp.
No i teraz moje rozterki bo wypadalo by z widoku wywołać metode tworzenia url-a i trzeba by podać nazwę akcji, co mi sie nie wydaje odpowiednie dla widoku. Z koleji zrobienie tego w każdej innej warstwie niepotrzebnie tylko będzie generować dane, bo tylko widok wie czy i jaki url będzie potrzebny.
Tak konkretniej to to chcialem w widoku dac cos ala:

FrontController -> GetURL(Model, ...) no i wypada podac nazwe akcji

Jakoś nie mogę sensownego rozwiązania wymyślić. W związku z tym proszę o pomoc i rozgrzeszenie:)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
eai
post
Post #2





Grupa: Zarejestrowani
Postów: 367
Pomógł: 10
Dołączył: 20.05.2005

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


Newsy, Kalendarz, Navigator stron to sa Modele nie są intergralną częscią FrameWorku tylko jego rozszeżeniem. Każde wywołanie strony wiąże się z przekazaniem url do routera, router pobiera dane ktore sa potrzebne
do dispatchera, dispacher wczytuje odpowiedni sterownik dla danej akcji,
sterownik to np funkcja switch ktora przechwytuje zmienne z routera (GET) i dolacza kolejne modele z odpowiednimi parametrami....

FrameWork daje Ci mozliwosc latwiejszego budowania stron, ale to ty budujesz recznie sterownik ktory uruchamia dane akcje, przeciez FrameWork nie zrobi za Ciebie wszystkiego nie bedzie wiedzial jakie masz funkcje w Modelu i jakie ma podac parametry, czesc kodu musi zostac napisana na zasadzie sterownika dla danej akcji pobierajac odpowiednie parametry.

sterownik.php?action=news&nawigator=32
  1. <?php
  2.  
  3.  $nawigator = nawigator($_GET['nawigator']);
  4.  $kalendarz = kalendarz($nawigator,(empty($_GET['time'])) ? time() : $_GET['time']);
  5.  $newsy = newsy($kalendarz);
  6.  
  7. ?>


Cos na tej zasadzie....

Ten post edytował eai 20.10.2006, 14:51:42
Go to the top of the page
+Quote Post

Posty w temacie


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: 28.12.2025 - 02:30