【发布时间】:2018-12-25 00:22:18
【问题描述】:
我想从最终结果中删除一些属性,并在这里找到了这个 Get only specific attributes with from Laravel Collection
这适用于顶层,但需要的是从相关项目中删除一些属性 假设用户有一张 access_card 并且 access_card 有一些长文本详细信息作为其属性之一。
我想从最终结果中删除该属性。可以用链接中提到的方法吗?
【问题讨论】:
我想从最终结果中删除一些属性,并在这里找到了这个 Get only specific attributes with from Laravel Collection
这适用于顶层,但需要的是从相关项目中删除一些属性 假设用户有一张 access_card 并且 access_card 有一些长文本详细信息作为其属性之一。
我想从最终结果中删除该属性。可以用链接中提到的方法吗?
【问题讨论】:
假设您在门禁卡上有一个“代码”字段,您可以尝试这样的操作:
$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);
【讨论】:
User::with(['access_card' => function($query){
$query->select('code');
} ])->select('id', 'email')->get();
假设您想要用户 ID 和电子邮件以及访问卡,并且只有 card_code
【讨论】: