Измените addActionContext () только на XML - PullRequest
2 голосов
/ 24 марта 2011

У меня есть Zend-код, который выглядит так:

$contextSwitch->addActionContext('get', array('xml','json'))->initContext();

Как я могу изменить это так, чтобы он ТОЛЬКО возвращал данные в формате XML? Извините, я новичок в программировании Zend.!

Ответы [ 2 ]

1 голос
/ 24 марта 2011

Прочтите руководство

public function init()
{
    $this->_helper->contextSwitch()
        ->addActionContext('get', array('xml','json'))
        ->initContext();
}

public function getAction()
{
    this->_helper->contextSwitch()->initContext('xml'); //will always use xml if action has xml context
    //...
}
0 голосов
/ 24 марта 2011

Если вы когда-либо используете xml только для определенного действия, задайте заголовки внутри действия, которое вы хотите вернуть xml:

$this->getResponse()->setHeader('Content-type', 'text/xml');

, а затем обработайте остальное действие, как вам нужно.Без переключения контекста представление будет по умолчанию для действия (т. Е. Actioname.phtml)

Возможно, вы также захотите отключить макет:

$this->_helper->layout->disableLayout();
...