Laravel急切加载,除非我选择主键,否则不起作用

问题描述 投票:0回答:1

我有两个桌子:学生和俱乐部,它们之间有很多关系。

我想在ajax调用中返回所有学生及其俱乐部,但是我想排除学生主键,因为这会提供有关系统中学生数量的意外信息。

$students = Student::all()
     ->with('clubs')
     ->select('students.name', 'students.grade', 'students.birthday')
     ->get();

这将为俱乐部返回一个空数组。如果我将第三行更改为包含id,则可以正常使用。

$students = Student::all()
     ->with('clubs')
     ->select('students.id', 'students.name', 'students.grade', 'students.birthday')
     ->get();

排除主键的最佳方法是什么?我是否应该通过在查询后循环遍历集合来删除它?

php laravel eloquent
1个回答
1
投票

我认为您可以使用收藏夹中的forget

https://laravel.com/docs/5.8/collections#method-forget

© www.soinside.com 2019 - 2024. All rights reserved.