【发布时间】:2019-02-21 19:48:55
【问题描述】:
我正在将一个旧项目从燃料迁移到 laravel,但我在响应其中一个请求时遇到了问题。问题是,我需要来自 laravel 的响应与在燃料中的响应完全相同,因为我已经在 iOS 和 Android 中拥有该应用程序,并且具有相同的响应意味着我只需要更改端点。我似乎无法在此处复制响应:
-
FuelPHP 代码和响应:
$belongs = Model_Belong::find('all',array( 'where'=>array( array('id_user',$id_user), ), )); return $this->createResponse(200, 'List', $belongs); *****RESPONSE**** { "code": 200, "message": "List", "data": { "[1][1]": { "id_user": 1, "id_group": 1 }, "[1][2]": { "id_user": 1, "id_group": 2 }, "[1][3]": { "id_user": 1, "id_group": 3 } } } -
Laravel 代码和响应:
$belongs = Belong::where('id_user', $id_user) ->get(); return $this->createResponse(200, 'List', $belongs); *****RESPONSE***** { "code": 200, "message": "List", "data": [ { "id_user": 1, "id_group": 1, }, { "id_user": 1, "id_group": 2, }, { "id_user": 1, "id_group": 3, } ] }
***编辑:createResponse() 方法
function createResponse($code, $message, $data = [])
{
if ($data == null) {
$data = (object)[];
}
return response()->json([
'code' => $code,
'message' => $message,
'data' => $data
]);
}
【问题讨论】:
-
这个 createResponse() 有什么作用,因为这不是标准的 Fuel 方法?而Model_Belong,是标准模型,还是ORM模型?
-
createResponse 是我创建的用于处理响应的方法(对于燃料和 laravel 相同)这是代码:(在问题中编辑)并且 Model_Belong 是 ORM。
-
@MiguelHeredia 如果
createResponse方法相同,那么燃料中的$belongs数据是什么样的? -
如果我只是 var_dump 不属于我的方法,它会给出这个:fuel:pastebin.com/Bvs1zqrzlaravel:pastebin.com/cfpmWVRG
-
这是一个 ORM get() 的结果,所以它是一个 Model_Belong 对象的数组。因此我的问题是该方法对它做了什么,因为水合 ORM 对象并没有给出这样的结果。
标签: php laravel-5 eloquent laravel-query-builder fuelphp