Как отобразить представление ZF2 в ответе JSON?
До сих пор я выяснил, как вернуть типичный ответ JSON в Zend Framework 2. Сначала я добавилViewJsonStrategy
кstrategies
разделview_manager
конфигурации. Затем вместо того, чтобы вернутьViewModel
Экземпляр из действия контроллера, я возвращаюJsonModel
экземпляр со всеми моими установленными переменными.
Теперь, когда я разобрался с этой частью, мне нужно понять, как визуализировать представление и вернуть его в ответ JSON. В ZF1 я смог использовать$this->view->render($scriptName)
, который возвратил HTML как строку. В ZF2Zend\View\View::render(...)
метод возвращаетvoid
.
Итак ... как я могу визуализировать скрипт представления HTML и вернуть его в ответе JSON в одном запросе?
Это то, что я имею сейчас:
if ($this->getRequest()->isXmlHttpRequest()) {
$jsonModel = new JsonModel(...);
/* @todo Render HTML script into `$html` variable, and add to `JsonModel` */
return $jsonModel;
} else {
return new ViewModel(...);
}