![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 115 Pomógł: 12 Dołączył: 13.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Od niedawna zacząłem uczyć się Zend Frameworka i mam pytanie natury techniczej. Ale najpierw kilka słów wyjaśnienia. Piszę prostego CMS-a. Strona admina jest gotowa jeżeli chodzi chodzi o dodawanie usuwanie i przeglądanie PODSTRON. Teraz chcę zapisywać do bazy tak jakby dwie ścieżki. Pierwszą z nich jest standardowa ścieżka do podstrony druga natomiast jest przyjaznym linkiem. Oto przykład.
domyślna ścieżka do podstrony Kontakt: zend_cms.local/cms/1 teraz przyjazny link ma wyglądać tak zend_cms.local/contact Teraz w bootstrapie mam inicjowanie "routerów" (nie wiem czy to poprawna odmiana, żeby mnie nikt za nią nie zbluzgał ![]()
Więc napotkam w linku słówko cms to ide do modułu/controlera/akcji i w niej sobie odczytuje na podstawie parametru ID którą podstronę zczytać (edytowana za pomocą FCK edytora w adminie). Wszystko byłoby by cacy ale ... to nie jest to ... klienci już by się przyczepili dlaczego to jest taki dziwny link cms/1 zamiast jakiegoś słówka "contact". I wymyśliłem sobie takie coś: Utworzę sobie routing przez który będzie przechodzić każdy link na stronie i w nim będę robił coś takiego: 1) sprawdzać adres linku z tabelką SeoMap (w której będę trzymać wszystkie mapowania linków) 2) jeżeli natrafię na link to pokazywać taką podstronę 3) w przeciwnym przypadku wywoływać defaultowy kontroller bądź kontroller dopasowany z url-a Teraz jeżeli strona będzie czysto tekstowa to to może by się sprawdziło ale gdyby takich podstron o które mi chodzi było mało to wówczas leżę i kwiczę. Teraz niech ktoś mądry i rozsądny mi powie czy takie rozwiązanie ma ręce i nogi i czy jest wykonalne i co najważniejsze sensowne czy jest może awykonalne i robi się to zuepłnie w inny sposób ![]() EDIT Proszę moderatora o przeniesienie tego posta do kategorii frameworki ... my mistake Ten post edytował michal_robak 17.01.2011, 21:25:46 -------------------- do wszystkiego trzeba podejść z głową a problem sam się rozwiąże
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Cytat chcę zapisywać do bazy tak jakby dwie ścieżki. Pierwszą z nich jest standardowa ścieżka do podstrony druga natomiast jest przyjaznym linkiem - po co coś takiego jest potrzebne? Linki dzisiaj generuje się dynamicznie.Cytat Więc napotkam w linku słówko cms to ide do modułu/controlera/akcji - a po co coś takiego? Standardowa konstrukcja moduł/kontroler/akcja/parametry nie wystarczą? Gotowe rozwiązanie jest, po co kombinować?Cytat Utworzę sobie routing przez który będzie przechodzić każdy link na stronie i w nim będę robił coś takiego: - dla mnie to kompletnie bez sensu, po co tworzyć jakiś routing skoro masz już zendowy? Jeśli nie podobają Ci się adresy moduł/kontroler/akcja/parametry to co za problem to zmienić i wrzucić np. moduł jako subdomenę? Po co trzymać linki w bazie i za każdym razem odpytywać bazę? I defaultowy kontroler i tak się odpali, jeśli nie podasz żadnego parametru.1) sprawdzać adres linku z tabelką SeoMap (w której będę trzymać wszystkie mapowania linków) 2) jeżeli natrafię na link to pokazywać taką podstronę 3) w przeciwnym przypadku wywoływać defaultowy kontroller bądź kontroller dopasowany z url-a Po mojemu jedyne co musisz zrobić, to dopisać do application.ini kilka linijek zmieniających standardowy routing zenda. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 115 Pomógł: 12 Dołączył: 13.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
tak myślałem że zbytnio kombinuję
![]() -------------------- do wszystkiego trzeba podejść z głową a problem sam się rozwiąże
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 23.06.2025 - 07:11 |