Laravel 8获取字段名的模型函数



在我的项目中,我有许多表,但其中一个表如下

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的信息。

最新更新