我正在使用此代碼來獲取資料。
$user = User::where('active', 1)->with(['spots:spot_name,spot_uid'])->get();
這很好用!它獲取關系并輸出資料。
但是資料看起來像這樣。
user_uid: 5
spots: {spot_name: 'backend'}
description: "Test user works in helpdesk"
department: "9"
它顯示了我需要的所有資料,但我希望spot_name不在它自己的子 json 陣列中,而只是將spot_name設為spot。像這樣:
spots: "backend"
我知道這是因為它獲得了 2 列,然后我隱藏了一個。
這是不可能的,還是我只是以錯誤的方式去做?任何資訊都會很棒。
uj5u.com熱心網友回復:
您可以使用集合格式化輸出:
$user->map(function ($x) {
$arr = $x->toArray();
$arr['spots'] = $arr['spots'][0]['spot_name'];
return $arr;
});
然后退出這個用戶。
uj5u.com熱心網友回復:
你能行的
User::where('active', 1)->withCount(['spots as spot_name' => function ($q) {
$q->select('spot_name');
}]);
輸出
{
...
spot_name: 'backend'
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/371173.html
下一篇:自動重新排序行并更新排序列的值
