我使用CakePHP和使用MVC标准。
我正在使用ajax发送请求,并需要以与tweeter响应相同的方式响应,请参阅下面的tweeter示例响应。
Like tweeter发送:
{
"user_id":"155dsfds95",
"html":" 'u003Cdiv class='"module profile-card component profile-header'" data-component-term='"profile_follow_card'" 'u003E'n ",
"screen_name":"abc"
}
我需要从控制器发送user_id
和screen_name
,从视图发送html
内容。
我的回复数据如下:
$response['user_id'] = $id;
$response['screen_name'] = 'some_name';
现在我可以发送user_id
和screen_name
作为json_encode($response)
但是我如何在data
索引中发送视图内容?
我不想在控制器中制作html内容,而应该来自视图
您可以轻松地从控制器呈现当前视图并返回JSON响应。
工作的例子:
public function index() {
$response = $this->render();
$data = array(
'json_key_1' => 'value1',
'json_key_2' => 123,
'action_html' => $response->body()
);
$options = array(
'type' => 'json',
'body' => json_encode($data)
);
return new CakeResponse($options);
}