在Laravel中如何使用find获取特定列?我知道你可以这样做:
$user = User::where('u_id', '=', 1)
->get(['firstname', 'lastname']);
有找到这种方法吗?这就是我目前所拥有的:
$user = User::find(1);
答案 0 :(得分:4)
您有两种选择。
首先,您可以传递列以选择find()
的第二个参数:
$user = User::find(1, ['firstname', 'lastname']);
其次,尽管有点专业化,find()
只是用于执行查询的方法,因此您可以事先正常修改查询(添加选择,轮询,订单等)。因此,您只需在执行select()
:
find()
即可
$user = User::select(['firstname', 'lastname'])->find(1);
答案 1 :(得分:0)
这是另一种方式,类似于@patricus。
$did = User::findOrFail($id, ['first_name', 'last_name']);
答案 2 :(得分:-1)
您可以使用
$user = User::find(1);
然后直接使用属性来访问它
$user->firstname;