【发布时间】:2014-05-09 07:14:56
【问题描述】:
我使用 Laravel 资源控制器为我的各种 SPA 创建了一个 API,它的工作原理就像一个魅力。虽然 BackboneJS 对默认 JSON 响应没有问题,但 EmberJS 期望将结果包装在一个单数和复数命名的 JSON 对象中,具体取决于它是获取单个模型还是模型集合。
我已经知道的
- 将 JSON 结果转换为数组,然后将其转换回 JSON。
- 将每个结果包装在一个对象中。
- 将来自数据库调用的结果更改为带有
setFetchMode(PDO::FETCH_ASSOC);的数组。
问题
如何正确(使用最便宜的流程)创建包装的 JSON 响应,而不是在 JSON、数组或对象之间来回转换结果?
来自 Laravel 资源控制器的片段:
<?php
class ResourceController extends Controller {
...
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index() {
return Model::all();
}
/**
* Display the specified resource.
*
* @param int $id
* @return Response
*/
public function show($id) {
return Model::find($id);
}
...
}
【问题讨论】:
-
您可以在服务器端使用包装格式,并为backbone.js 做额外的工作。以我的回答here 为例
标签: php rest backbone.js ember.js laravel-4