![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 1 Dołączył: 26.10.2012 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Posiadam w swojej aplikacji MainController po którym dziedziczą inne kontrolery. Chcialem aby w konstruktorze definiowała mi sie aktualna nazwa routa. co potem w bede wykorzystywał do podswietlania odpowiedniej pozycji w menu (i nie tylko.) użyłem:
Otrzymuje błłąd: Cytat Error: Call to a member function get() on a non-object in moja sciezka do pliku. blad w linijce: $currentRoute = $this->container->get('request')->get('_route'); Jeśli sie nie mylę to ten zapis jest poprawny. Próbowałem tez utworzyc metode ktora zwracalaby nazwe route'a i inicjowałem ją w konstruktorze (np. $this->getCurrentRoute), która zawierała te linijki z konstruktora. Czy ktoś mi może wskazać błąd, lub polecić inne rozwiązanie?? Wiem że bezposredno w szablonie moge pobrac aktualna nazwe Routa, jednak wolalbym tak jak wyżej podałem. Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 20 Dołączył: 17.01.2009 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Przecież w template dostęp do obiektu request(app.request) jest bardzo prosty.
Tu masz przykład. http://stackoverflow.com/questions/9378714...n-twig-template A twoje rozwiązanie nie działa. Bo próbujesz w konstrukturze obiektu odwołać się obiektu containera $this->container. A obiekt Containera jest dopiero póżniej wstrzykiwany setterem przez Symfony . W konstruktorze $this->container jest nullem i daltego zgłasza Ci błąd: "function on a non-object" Ten post edytował ziolo 12.08.2014, 23:29:33 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
http://stackoverflow.com/questions/1117919...ony2-controller - temat sprzed dwóch lat, ale może Cię nakieruje.
http://symfony.com/blog/new-in-symfony-2-4-the-request-stack - tutaj też coś jest. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 1 Dołączył: 26.10.2012 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
To że mogę w twigu się odwołać do obiektu request to wiedzialem. jednak mi zalezy na kontrolerze.
Ziolo dzieki za wyjaśnienie że Request jest wstrzykiwany dopiero poźniej, to faktycznie wszystko wyjaśnia. 404 - Drugi link też jest przydatny! Dzięki Panowie. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 21:20 |