幸福飞过海 - stackoverflow
https://fengqi.me/tag/stackoverflow/
-
[总结] Laravel 如何在预加载试控制返回的字段
https://fengqi.me/php/261.html
2014-12-16T11:52:00+00:00
参考链接:Get specific columns using “with()” function in Laravel EloquentLaravel 的预加载使用方式是:Post::with('user', 'user.extend')->orderBy('id', 'DESC')->paginate(10, array('id', 'content'));
拿到用户和扩展信息太方便了,但是问题是返回的数据太多了,站在一个强迫症的角度简直无法容忍啊。控制返回的字段有两种方法,一个是在 model 里定义关系时指定好字段,但是不太灵活,还一种是在 ->with() 这里做文章:Post::with(array(
'user' => function($query) { $query->select('id', 'name'); },
'user.extend' => function($query) { $query->select('birth', 'intro'); },
))->paginate(10, array('id', 'content'));
就这样。既然可以指定字段那还可以做一些别的什么呢???