Php 仅从Laravel集合和关系中获取特定属性
我想从最终结果中删除一些属性,并在这里找到它 这适用于顶层,但需要从相关项中删除一些属性 假设用户有一个访问卡,并且访问卡的属性中有一些长文本详细信息 我想从最终结果中删除该属性。使用链接中提到的方法是否可行?假设您的访问卡上有一个“代码”字段,您可以尝试以下操作:Php 仅从Laravel集合和关系中获取特定属性,php,laravel,Php,Laravel,我想从最终结果中删除一些属性,并在这里找到它 这适用于顶层,但需要从相关项中删除一些属性 假设用户有一个访问卡,并且访问卡的属性中有一些长文本详细信息 我想从最终结果中删除该属性。使用链接中提到的方法是否可行?假设您的访问卡上有一个“代码”字段,您可以尝试以下操作: $users = Users::with('access_card')->get(); $subset = $users->map(function ($user) { return collect(
$users = Users::with('access_card')->get();
$subset = $users->map(function ($user) {
return collect(
[
'id' => $user->id,
'email' => $user->email,
'access_card' => $user->access_card->code,
]);
});
dd($subset);
假设您希望用户id和电子邮件带有访问卡,并且只有卡代码有点乏味,但可以工作,我希望可以将属性命名为唯一函数的参数数组。谢谢提示,我将在其他地方尝试此功能。我忘了提到我只想修改集合,这是一个干净的api响应json,集合已经被一个视图使用了
User::with(['access_card' => function($query){
$query->select('code');
} ])->select('id', 'email')->get();