繁体   English   中英

在 Eloquent ORM 中使用 find 选择特定的列

[英]Select specific columns using find in Eloquent ORM

在 Laravel 中,如何使用查找获取特定列? 我知道你可以这样做:

$user = User::where('u_id', '=', 1)
        ->get(['firstname', 'lastname']);

有没有办法用find来做到这一点? 这就是我目前拥有的:

$user = User::find(1);

你有两个选择。

首先,您可以将要选择的列作为第二个参数传递给find()

$user = User::find(1, ['firstname', 'lastname']);

其次,尽管有些特殊, find()只是用于执行查询的方法,因此您可以事先正常修改查询(添加 selects、wheres、orders 等)。 因此,您可以在执行find() select() ) :

$user = User::select(['firstname', 'lastname'])->find(1);

这是另一种方式,类似于@patricus。

$did = User::findOrFail($id, ['first_name', 'last_name']);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM