前几天在写api的时候,出现了一个比较奇怪的问题,用paginate()方法取值取不到的问题,我奇怪的是,我用paginate()方法取值是直接复制粘贴之前自己写过的api中的代码的,怎么突然取不到了呢?
代码如下:
$user = JWTAuth::parseToken()->authenticate();$status = $request->input(‘status‘);$appeal = Appeal::select(‘id‘,‘created_at‘,‘area‘,‘spread_way_id‘,‘result‘) ->where(‘user_id‘,$user->id) ->where(‘status‘,$status) ->with([‘spread_way‘=>function($q){ $q->select(‘id‘,‘spread_way as spread_way_name‘); }]) ->paginate(5);return response()->success($appeal); 这样的取值结果是空,然后我用get(5)去取值,结果有5条数据,这让我非常疑惑,难道paginate()方法有问题?我明明是复制粘贴过来的,之前用的还是好好的,怎么会突然有问题呢?后面发现,复制代码的时候少了toArray()这个方法,导致success()不能将collection()集合转化为json格式。(用paginate()取到的是一个collection()集合,并不是我们平时用的数组)。新人写的随笔,有错误的地方还请大神斧正!转载请说明出处~
时间: 2024-10-10 06:36:25