Как вернуть отрисованный шаблон ветки как часть ответа JSON?


Я хочу вернуть фрагмент HTML, а также другие значения в строке json, вот что у меня есть:

$html = $this->render('sometemplate.html.twig', array( 'somevar' => $somevar ) );
$response = new Response(json_encode( array("html" => $html, "name" => "Joe Bloggs") ));
$response->headers->set('Content-Type', 'application/json');
return $response;

Но все, что я получаю, это {"html":{"headers":{}}}. Есть ли способ просто захватить отрисованный HTML-код?

Author: bruce, 2012-11-06

1 answers

Вместо этого используйте $this->renderView().

$this->render() возвращает объект Response, в то время как $this->renderView() возвращает строку, полученную в результате визуализации шаблона.

 43
Author: Elnur Abdurrakhimov, 2012-11-06 18:37:39