在我的项目中,我有许多表,但其中一个表如下
user (id,name,active)
在我的order控制器中我在数组中得到了用户的id我想要得到name所以我有两种方法
1. Loop through array and query each id with user table to get name
或2. 在用户模型中定义一个函数,无需进行100次查询即可获得每个id的名称。
我试着咆哮,但它不工作
public function getNameAttribute()
{
return $this->name;
}
然后在控制器中输入
User::name('2');
,其中2为id我得到错误。
我需要它在模型中,因为我将循环通过每个Id的一些工作,同时我将保存名称在不同的表。
最好的方法是什么?
感谢尝试使用
User::whereIn('id', $listOfIds)->pluck('name');
你可以在Laravel文档
中阅读更多关于pluck方法和where的信息。