Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF]SwitchContext, W jaki sposób ustawić json dla wszystkich kontrolerów i akcji
PanGuzol
post
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. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
irmidjusz
post
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
Go to the top of the page
+Quote Post
PanGuzol
post
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. }
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: 22.08.2025 - 20:23