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

我有两张表:学生和俱乐部,它们之间存在多对多关系。


作为 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();

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


小怪兽爱吃肉
浏览 118回答 1
1回答

侃侃无极

forget我想你可以从收藏中使用https://laravel.com/docs/5.8/collections#method-forget
打开App,查看更多内容
随时随地看视频慕课网APP