![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 4 Dołączył: 9.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chciałbym stworzyć routing, do własnej implementacji MVC. Na początku przedstawię strukturę katalogów mojego projektu. (IMG:http://img855.imageshack.us/img855/6812/struktura.gif) W folderze app, będą pliki danego projektu. Każdy contoller będzie miał swój plik .yml w którym będą zapisane zasady routingu. przykładowy plik index.yml prefiks oznacza wpisany adres url, contoller i action wiadomo.
i tak działa mój routing: 1. ktoś wpisuje adres na mojej stronie np. index/show/40 2. sprawdzane jest czy istnieje dany controller o nazwie index, akcja show i parametr 40 3. jesli tak to uruchamiany jest odpowiednia akcja z contollera Routing.php
Bootstrap.php
Chciałbym aby mój kod był uniwersalny i był elastyczny dla wielu różnych projektów. Chciałbym też aby został napisany o dobre praktyki OOP. Głównie to właśnie zależy mi na wysokiej jakości kodu. Co myślicie o takim rozwiązaniu tego zagadnienia? Wszystko działa w tym routingu. Jednak bardzo mi zależy aby pisać przemyślany kod. Gdzie popełniłem jakiś błąd projektując ten routing ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Odpowiedź już padła, zakładając że masz dobry router a uri wygląda tak:
Cytat /user/all Przekazać masz wartość nr 2 czyli "all"
lub uri jakieś inne Cytat /user/all/name/stefan Zakładając że wybierasz przez router tylko "all" i "stefan"
itd. Oczywiście wszytko musisz rozplanować, sprawdzić 40 razy który wariant będzie dobry. Tak czy inaczej, jeśli masz klasę URI która pobiera tą wartość, to przez Router na nich operujesz odsyłając do kontrolera i metody z parametrami. Jeśli chcesz przekazywać parametry, to może Cie zainteresować ta funkcja call_user_func_array Ten post edytował !*! 18.01.2013, 14:51:38 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 18:57 |