2016-10-14 53 views
1

我是新来的laravel和我使用laravel 5.3 我有一个由18个字段组成的用户表。任何时候我跑这条线:$article->load('comments.user', 'comments.replies.user');,我得到所有18个领域。是否有可能只检索3个字段(名称,用户名和ID)?检索特定的字段,同时做在laravel渴望加载

我已经花了一些时间在谷歌,但我找到了答案搜索,不工作:

$article->load(array('comments.user' => function($query) { 
    $query->select('id', 'name', 'username'); 
})); 
+2

尝试使用:$ query-> select('id','name','username') - > get(); – john

+0

@john谢谢,它按照需要工作。你可以发布你的答案吗? – Prince

回答

0

线$article->load('comments.user', 'comments.replies.user');可以更改为下面的代码行,其中可指定所需的字段

return $article->load(
    array(
     'comments.user' => function($query) { 
      $query->select('id', 'name', 'username')->get(); 
     }, 
     'comments.replies.user' => function($query) { 
      $query->select('id', 'name', 'username')->get(); 
     } 
    ) 
);