Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
cakephp如何使用json将数据从控制器发送到视图_Php_Json_Api_Cakephp - Fatal编程技术网

cakephp如何使用json将数据从控制器发送到视图

cakephp如何使用json将数据从控制器发送到视图,php,json,api,cakephp,Php,Json,Api,Cakephp,嗨,我正在尝试制作一个API来发送用json封装的数据 正如cakephp手册所说,我在routes.php中添加了扩展 $routes->extensions(['json]); 我在控制器中做了一个索引函数 public function index(){ $item = $this->Items->find('all'); $this->set(['items' => $items, '_serialize' => ['items']]

嗨,我正在尝试制作一个API来发送用json封装的数据

正如cakephp手册所说,我在routes.php中添加了扩展

$routes->extensions(['json]);
我在控制器中做了一个索引函数

public function index(){
    $item = $this->Items->find('all');
    $this->set(['items' => $items, '_serialize' => ['items']]);
}
问题就在这里

在这之后,我应该做些什么来使用json封装api

请帮忙


谢谢你

根据Cake 2.x书()

您必须将其添加到routes.php文件中:

Router::mapResources('items');
Router::parseExtensions();
然后,在items控制器中,将RequestHandler添加到组件数组:

public $components = array('RequestHandler');
然后,在项目控制器中,在示例中添加方法:

public function index() {
    $recipes = $this->Items->find('all');
    $this->set(array(
        'items' => $items,
        '_serialize' => array('items')
    ));
}
注意:根据模型名称约定,您应该调用$this->Item而不是$this->Items,除非您之前在项目模型文件中将模型名称定义为“Item”(单数)


最后,API完成了,您可以访问您的projectURL/items.json并查看json结果。

在我使用
$recipes
之前,我对RicardoCamacho的代码很不熟悉,这就是
$this->items->find('all')$this->set(数组…

public function index() {
    $recipes = $this->Items->find('all');
    $this->set(array(
        'items' => $recipes,
        '_serialize' => array('items')
    ));
}

哇!!非常感谢你让我知道这一点。我误解了cake2.x书中其余部分的手册。谢谢你!!!!!你太棒了!!