这就是我想要做的事情
public function editAction(Request $request, Uni $uni){
$template = $this->forward('AppBundle:Uni:edit.html.twig')->getContent();
$json = json_encode($template);
$response = new Response($json, 200);
$response->headers->set('Content-Type', 'application/json');
return $response;
}
基本上,我正在尝试获取edit.html.twig文件的内容。不幸的是,我没有从edit.html.twig文件中获得预期的内容。我怎样才能获得这些内容?
edit.html.twig文件的位置位于testproject/app/Resources/uni/edit.html.twig
答案 0 :(得分:2)
从控制器内部获取twig模板内容的最简单方法是使用renderView
辅助方法。
您可以对代码进行的另一项改进是使用symfony的JsonResponse
类来返回您的JSON。例如:
use Symfony\Component\HttpFoundation\JsonResponse;
public function editAction(Request $request, Uni $uni)
{
$template = $this->renderView('AppBundle:Uni:edit.html.twig', [
'uni' => $uni,
]);
return new JsonResponse($template);
}
答案 1 :(得分:0)
您也可以直接使用$.ajax({
type: 'POST',
async: false,
url: '/clientarea/utils/record-time',
data: 'teid=' + teid + '&t=' + t
});
助手:
render