Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony] przeciążenie sfActions, czy i jak da się to zrobić
Cezar708
post
Post #1





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


Witam,

jak w temacie. Czy można przeciążyć klasę sfActions? A dokładnie czy jest możliwość jakiejkolwiek ingerencji w jej kod?

Pozdrawiam
Go to the top of the page
+Quote Post
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

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


Pewnie masz na myśli dziedziczenie. Oczywiście, że można. Spróbowałeś chociaż samemu to zrobić?
Dodajesz klase dziedziczącą po sfActions i swoje akcje dziedziczysz po tej nowej klasie. Wpakować możesz ją do katalogu lib. Sf sam sobie znajdzie, ale musisz wyczyścić cache.

Ten post edytował destroyerr 19.08.2008, 16:01:10
Go to the top of the page
+Quote Post
Cezar708
post
Post #3





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


Oczywiście, że wiem co to jest dziedziczenie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

... tylko że przy każdym utworzeniu nowego modułu będę musiał pamiętać o zmianie parenta dla moich actions.class.php, co nie jest wygodne - bo pamięć mam słabą i może to powodować problemy w przyszłości.

Dlatego pytam, czy jest jakiś sposób określania po której klasie nowe akcje mają dziedziczyć (w settings.yml? ...może database.yml?) tak aby symfony automatycznie dopisywała odpowiedniego parenta, czyli nie musiałbym być uzależniony od swojej zawodnej pamięci (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pozdrawiam
Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


W przypadku akcji nie da się tego zmienić. Można takie coś zrobić z requestem, controllerem, userem ale nie z akcją.
Jedyny sposób to ten opisany przez ~destroyerra. Jeśli natomiast zalezy Ci również na tym żeby generowane klasy uwzglądniały klasę, która napiszesz to musiałbyś zmienić w szablonie służącym go generowania pliku actions.class.php
Go to the top of the page
+Quote Post
Cezar708
post
Post #5





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


Cytat(mike @ 20.08.2008, 10:12:34 ) *
(...) Jeśli natomiast zalezy Ci również na tym żeby generowane klasy uwzglądniały klasę, która napiszesz to musiałbyś zmienić w szablonie służącym go generowania pliku actions.class.php


no to by było rozwiązanie, ale czy jest jakaś możliwość napisania takiego szablonu na poziomie projektu (nie instacji symfony). Czyli chodzi mi o to, że w zależności od projektu korzystam z sfActions lub myActions. Czy tylko jest możliwość zmiany plików w instalacji symfony (/usr/share/php/symfony....)

Przejrzałem docs ale wydaje mi się, że nie ma takiej opcji.

Pozdrawiam
Go to the top of the page
+Quote Post
destroyerr
post
Post #6





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

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


Oczywiście, że jest możliwość nadpisania szablonu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Musisz wrzucić plik do folderu data/skeleton/module/module/action plik actions.class.php. Do tego pliku wstawiasz sobie swój szablon akcji.
Go to the top of the page
+Quote Post
Cezar708
post
Post #7





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


pięknie... dzięki
Go to the top of the page
+Quote Post

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: 23.08.2025 - 08:55