如何返回树枝渲染模板作为JSON响应的一部分? [英] How do I return a twig rendered template as part of a JSON response?

查看:77
本文介绍了如何返回树枝渲染模板作为JSON响应的一部分?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想返回一个json字符串中的HTML代码段以及其他值,这是我拥有的:

I want to return an HTML snippet as well as other values in a json string, here is what I have:

$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?

But all I get is {"html":{"headers":{}}}. Is there a way to just grab the rendered HTML?

推荐答案

请改用$this->renderView().

$this->render()返回一个Response对象,而$this->renderView()返回一个由于渲染模板而产生的字符串.

$this->render() returns a Response object, while $this->renderView() returns a string resulting from rendering a template.

这篇关于如何返回树枝渲染模板作为JSON响应的一部分?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆