![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Próbuję znaleźć rozwiązanie mojego problemu. Chciałbym, aby poniższy przykładowy URL działał w Zend Framework: http://localhost/kategorie,1,1,1.html Powyższy URL tłumaczy się na: http://localhost/dowowolny_tekst,id_kontro...d_elementu.html Rozszerzona wersja tego URL'a jest taka: http://localhost/kategorie,1,1,1,1.html To oznacza: http://localhost/dowowolny_tekst,id_kontro..._podstrony.html Przykładowe URL'e: http://localhost/informatyka,15,29,735,2.html oznacza: kontroler o ID: 15, akcja o ID: 29, element o ID: 735, podstrona: 2 http://localhost/ekologia,4,13,59,7.html oznacza: kontroler o ID: 4, akcja o ID: 13, element o ID: 59, podstrona: 7 http://localhost/teologia,3,2,7.html oznacza: kontroler o ID: 3, akcja o ID: 2, element o ID: 7, podstrona: 1 Poza Frameworkiem udało mi się obsłużyć takie adresy, ale jak to zrobić w Zend Framework? Prosiłbym o opis w dwóch wersjach w pliku application.ini i w Bootstrap.php Pozdrawiam. Mariusz (sanneo) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 245 Pomógł: 4 Dołączył: 22.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Poradziłem z tym sobie pisząc poniższy kod:
Jest to prawie OK. Ale jak wynika z mojego problemu potrzebuję pierwszy id (id_kontrolera) "przetłumaczyć" na "nazwę kontrolera". W jaki sposób i w którym miejscu? Pozdrawiam. Mariusz (sanneo) Ten post edytował sanneo 18.04.2011, 13:44:15 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 245 Pomógł: 4 Dołączył: 22.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Możesz mi wytłumaczyć ten koncept, bo niestety nie rozumiem, prawdopodobnie mylisz pojęcia kontroler z czymś innym. Mógłbyś napisać dokładnie co chcesz osiągnąć, np. jaką treść chcesz wyświetlić pod jakimś przykładowym linkiem?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 13 Dołączył: 3.02.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam.
@Diwi Jak wiemy URL w Zendzie ma następującą strukturę: domena/{moduł}/kontroler/akcja/dowolne_zmienne Ja chcę strukturę w której ukośniki będą zamienione na przecinki, a zamiast nazw elementów MVC chcę aby były ich ID. Kilka "konkretnych" URL'i (zwróć proszę uwagę szczególnie na 4 URL): 1) http://localhost/samochody,1,1,5.html Ma wyświetlić kategorię o ID: 5 Kontroler: kategoria (1) Akcja: wyswietl (1) ID kategorii: 5 (5) Jest to tożsame z czymś takim w Zend: http://localhost/kategoria/wyswietl/id/5 2) http://localhost/kontakt,2,1,0.html Kontroler: kontakt (2) Akcja: formularz (1) ID kategorii: 0 (5) Jest to tożsame z czymś takim w Zend: http://localhost/kontakt/formularz/ 3) http://localhost/Lamborghini,3,1,95.html Kontroler: samochod (3) Akcja: wyswietl (1) ID samochodu: 95 (95) Ma wyświetlić informacje o samochodzie Lamborghini, którego ID w bazie danych, to 95 Tożsame z: http://localhost/samochod/wyswietl/id/95 4) http://localhost/Lamborghini,3,2,95.html Kontroler: samochod (3) Akcja: edytuj (2) ID samochodu: 95 (95) Ma pozwolić na edycję informacji o samochodzie Lamborghini, którego ID w bazie danych, to 95 Tożsame z: http://localhost/samochod/edytuj/id/95 @kalipek Nie, to nie o to chodzi. Mam 9 kontrolerów i około 50 akcji, potrzebuję to zapisać w URL'ach za pomocą liczb. Dla 1 kontrolera i 1 akcji, mój kod się sprawdza. Ale jak obsłużyć 9 kontrolerów i 50 akcji? Z mojego gdybania wynika, że musiałbym ten mój kod do zmiany routingu zapisać wielokrotnie i dodać go do routera, a że liczba kontrolerów i akcji jest bardzo duża, to wydaje mi się to słabym pomysłem, może jest lepszy na to sposób? Kontrolery, które mam utworzone za pomocą zf_bat: account car cart category index information notifications rss search Każdy z nich będzie miał swoje akcje. Pozdrawiam. Mariusz (sanneo) Ten post edytował sanneo 19.04.2011, 07:50:09 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 19:53 |