2015-04-03 22 views
0

我想從控制器方法中獲取數據並將數據作爲JSON字符串返回,所以JavaScript可以處理它。AJAX調用後用JavaScript處理數據(CakePHP 2.6.x)

我執行了所有步驟,以便Cake可以按照here所述的方式處理JSON。

AJAX調用鑑於:

$.ajax({ 
    url: '/cake/workers/getWorkersAsJSON.json', 
    async: true, 
    success: function(data) { 
     console.log("data: " + data); 
    } 
}); 

控制器方法:

public function getWorkersAsJSON() { 
    $workers = ClassRegistry::init("Worker")->find('list', array('order' => array('fullname' => 'asc'), 'conditions' => array('Worker.partner_id' => '6'))); 
    $this->set('_serialize', array('workers')); 
} 

我所期望的數據在JavaScript的data可變但這總是null

當我將return json_encode($workers);添加到控制器,然後我得到的數據,但我不認爲這是整個設置背後的想法。

我該怎麼做才能獲取數據?

回答

0

添加$this->set(compact('workers'))的行動。目前,您只設置_serialize,它指示要序列化哪個變種,但不會將$workers變種本身傳遞給視圖。