Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZF]SwitchContext, W jaki sposób ustawić json dla wszystkich kontrolerów i akcji
PanGuzol
post 21.08.2012, 21:38:34
Post #1





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Witam,

Chcę aby wszystkie akcje we wszystkich kontrolerach były wyświetlane w formacie json.
SwitchContext działa bez problemowo ale muszę definiować każdą akcję z osobna w kazdym kontrolerze w init().

Próbowałem napisać plugin ale nie za bardzo chce on działać.

  1. <?php
  2.  
  3.  
  4. class My_Plugin_SetFormat extends Zend_Controller_Plugin_Abstract
  5. {
  6. //all responses will be in json format
  7. public function preDispatch(Zend_Controller_Request_Abstract $request)
  8. {
  9. $request->setParam('format', 'json');
  10. $contextSwitch = Zend_Controller_Action_HelperBroker::getStaticHelper('ContextSwitch');
  11.  
  12. $contextSwitch->clearContexts()
  13. ->clearActionContexts()
  14. ->setContext('json', array())->initContext();
  15. }
  16. }


--------------------
Sposób na życie? Uśmiech na twarzy :D
"Widzę więcej, wiem więcej, tak to jest mniej więcej"
"NIE kradnij, rząd nielubi konkurencji"
Go to the top of the page
+Quote Post
irmidjusz
post 21.08.2012, 21:41:38
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

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


Z 2010 roku, ciekawe, czy coś się do dzisiaj zmieniło:
http://zend-framework-community.634137.n4....-td1751964.html


--------------------
there is much to be learned
Go to the top of the page
+Quote Post
PanGuzol
post 21.08.2012, 22:57:45
Post #3





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Dzięki za odpowiedź, wciąż niemożna tego zrobić w pluginie ale udało się w action helperze.

  1. <?php
  2.  
  3.  
  4. class My_Helper_SetFormat extends Zend_Controller_Action_Helper_Abstract
  5. {
  6. //all responses will be in json format
  7. public function preDispatch()
  8. {
  9. $this->getRequest()->setParam('format', 'json');
  10. $contextSwitch = Zend_Controller_Action_HelperBroker::getStaticHelper('ContextSwitch');
  11. $contextSwitch->setActionController($this->getActionController());
  12. $contextSwitch->addActionContext($this->getRequest()->getActionName(), 'json')->initContext();
  13. }
  14. }


--------------------
Sposób na życie? Uśmiech na twarzy :D
"Widzę więcej, wiem więcej, tak to jest mniej więcej"
"NIE kradnij, rząd nielubi konkurencji"
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:52