雄辩的查询,但只有一些属性

问题描述:

我在我的数据库中有很多用户,并且有很多用户属性,我认为我的查询很慢,因为这一点。雄辩的查询,但只有一些属性

有没有办法用雄辩来获得所有的用户,但只有一些他们的属性查询?现在我有一个经典之作:

$users = User::all(); 

而我只想得到username,created_at,active。因此,如果我制作刀片@foreach($ users为$ user)循环并尝试获取$ user-> email,这应该会给我一个错误,因为我不需要该字段。

如何进行这样的查询?

+0

的'动物内脏()'方法是你在找什么:https://laravel.com/docs/5.4/collections#method-pluck – Sebastian

$users = User::select('username', 'created_at', 'active')->all();

+0

我需要检查一个。有没有办法在变量上动态调用select?就像这个'$ agent-> users-> select()'那个不能工作的btw,这个注释中的那个 – lewis4u

+0

假设'users'是一个关系'agent'的关系,那么你会做'$ agent-> users ) - > select(['a','b','c'])' – Jono20201