![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam. Jak powszechnie wiadomo, aby uruchomić poprawnie działającą aplikację opartą o Zend Framework na home.pl należy ustawić ścieżki bezwzględne dla przekierowań:
W wersji hard można dodać tę linię kodu przed każdym przekierowaniem. W wersji soft można wrzucić tę linię kodu do metody _init() każdego kontrolera, który używa przekierowań. Szukam rozwiązania w wersji superlight, takiego, że zmieniam coś/dodaję tę linię kodu w jednym tylko miejscu i mam spokój. Pytanie: czy poprawne/dozwolone/prawidłowe/wskazane byłoby gdybym dodał do ciała metody init() klasy abstrakcyjnej Zend_Controller_Action (plik: /library/Zend/Controller/Action.php) ? Czy też jakoś inaczej można rozwiązać powyższy problem zachowując jedyny warunek modyfikacji w jednym tylko miejscu ? Pozdrawiam. ps. właściwie dziedziczenie po tej klasie, nadpisanie tej metody i następnie zmiana każdego kontrolera nie wchodzi w grę. Z góry dziękuję za jakąkolwiek pomoc. ps 2. w sumie też chodzi o to czy nie naruszę w żaden sposób licencji (new BSD) modyfikując źródła frameworka Zend? Chyba nie. Ten post edytował darko 31.03.2010, 13:05:11 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 580 Pomógł: 85 Dołączył: 25.03.2010 Skąd: Skrzyszów :) Ostrzeżenie: (0%) ![]() ![]() |
Dobrym zwyczajem jest tworzenie własnych klas typu Application_Controller_Action && Application_Db_Table && Application_Form i dziedziczenie po nich, co w przyszłości oszczędza duużo zachodu, możesz we wszystkich plikach kontrolerów zastąpić Zend_Controller_Action => Application_Controller_Action i tam wprowadzić zmianę, albo
Wybierz sam co Ci najbardziej pasuje |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To wiem, jednak mi chodzi o to, żeby w ogóle nie ruszać istniejącego kodu, nie zmieniać kontrolerów (zależy mi na utrzymaniu jednej wersji dla hostingów typu home.pl i tej samej dla pozostałych, normalnych, i żeby jedyna różnica polegała na podmianie/dodaniu tej jednej linii kodu).
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
Spróbuj dodać to ustawienie w Bootstrapie lub pluginie. Niestety nie mam teraz zbytnio czasu, by sprawdzić ten sposób.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 580 Pomógł: 85 Dołączył: 25.03.2010 Skąd: Skrzyszów :) Ostrzeżenie: (0%) ![]() ![]() |
Widać za mało napisałem (IMG:style_emoticons/default/smile.gif) Ten kod który podałem wstawiasz do bootstrapa albo do pliku index.php i niczego nie musisz ruszać oprócz index.php
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedzi, już sobie poradzę dalej. Pozdrawiam.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 1 Dołączył: 19.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
A może umieścić tą linie kodu w jakimś pluginie?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 13:12 |