2013-12-08 3 views
0

Я список Areas найти для моего CakePHP 2.x веб-сайт и он поддерживает, JSON выход, как показано ниже с find all способом:CakePHP JSon изменить формат

$this->Area->find('all', array('fields' => array('id', 'name', 'order'), 'conditions' => array('Area.status' => 1))); 

Ниже мой выход JSON:

[{"Area":{"id":"2","name":"Area 1","order":"1"}},{"Area":{"id":"3","name":"Area 2","order":"1"}}] 

Теперь это возможно для меня удалить тег Area, который повторяется каждый раз?

Любой патч для этого же? Дайте мне знать, если какие-либо предложения/идеи.

ответ

0

CakePHP Предоставляет некоторые встроенные функции библиотеки для извлечения данных из набора результатов и вывода, такие же, как формат JSON.

// initialize your function to render false and response type json 
    $this->autoRender = false; // no view to render 
    $this->response->type('json'); 

    // Remove Area from array and encode 
    $area = Set::extract('/Area/.', $area); 
    $json = json_encode($area); 
    $this->response->body($json); 

Надеюсь, это поможет!

0

на ваш взгляд, для вывода JSON написать это:

echo json_encode(Set::extract('/Area/.', $area)); 

Для меня работает отлично.

Смежные вопросы