我正在调用一个 Controller 函数:
$.get("http://localhost/universityapp/courses/listnames", function(data){
alert("Data Loaded: " + data);
});
在我的 Controller 中:
public function listnames() {
$data = Array(
"name" => "Sergio",
"age" => 23
);
$this->set('test', $data);
$this->render('/Elements/ajaxreturn'); // This View is declared at /Elements/ajaxreturn.ctp
}
在那个 View 中:
<?php echo json_encode($asdf); ?>
但是,该操作返回整个页面,包括布局内容(页眉、页脚、导航)。
我在这里错过了什么?如何只返回 JSON 数据而不返回布局内容?
最佳答案
设置autoRender=false
并返回json_encode($code)
:-
public function returningJsonData($estado_id){
$this->autoRender = false;
return json_encode($this->ModelBla->find('first',array(
'conditions'=>array('Bla.bla_child_id'=>$estado_id)
)));
}
关于php - 如何从 CakePHP 2.2 Controller 返回 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12962870/