Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] przeciążenie sfActions
Forum PHP.pl > Forum > PHP > Frameworki
Cezar708
Witam,

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

Pozdrawiam
destroyerr
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.
Cezar708
Oczywiście, że wiem co to jest dziedziczenie 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 smile.gif

Pozdrawiam
mike
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
Cezar708
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
destroyerr
Oczywiście, że jest możliwość nadpisania szablonu 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.
Cezar708
pięknie... dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.