从 Eloquent where 子句中获取属性
Get Attribute from Elequent where clause
所以我有以下 where 子句,我在我的层 table 内搜索名称 "Gold"。
$tier = Tier::where(['name' => 'Gold'])->get(['id']);
dd($tier);
当我执行上述操作时,"id" 列在属性中,但当我执行以下操作时,它会给我
Undefined property: Illuminate\Database\Eloquent\Collection::$id
dd($tier->id);
我只想获取名称为 "Gold" 的记录的 ID。
要获得实际模型,您应该使用 first()
而不是 get()
。因为可能有多个行匹配 get()
将 return 一个集合。
$tier = Tier::where(['name' => 'Gold'])->first(['id']);
dd($tier->id);
如果您真的只需要 id,还有一个更简单的函数,pluck()
。
它将从第一个结果中获取一个属性:
$id = Tier::where(['name' => 'Gold'])->pluck('id');
所以我有以下 where 子句,我在我的层 table 内搜索名称 "Gold"。
$tier = Tier::where(['name' => 'Gold'])->get(['id']);
dd($tier);
当我执行上述操作时,"id" 列在属性中,但当我执行以下操作时,它会给我
Undefined property: Illuminate\Database\Eloquent\Collection::$id
dd($tier->id);
我只想获取名称为 "Gold" 的记录的 ID。
要获得实际模型,您应该使用 first()
而不是 get()
。因为可能有多个行匹配 get()
将 return 一个集合。
$tier = Tier::where(['name' => 'Gold'])->first(['id']);
dd($tier->id);
如果您真的只需要 id,还有一个更简单的函数,pluck()
。
它将从第一个结果中获取一个属性:
$id = Tier::where(['name' => 'Gold'])->pluck('id');