gpt4 book ai didi

php - 如何从 laravel 中的那个表中使用两个外键从单个表中获取数据

转载 作者:太空宇宙 更新时间:2023-11-03 11:23:03 26 4
gpt4 key购买 nike

这可能是我的问题你不清楚,但我的英语很弱。假设我有两个表“用户”和“项目”。该项目表包含用户表中的两个外键。

那是因为,我要标两个人

(1) person who implement the project (Employee)(2) person who Mange or supervise the project (Manager)
user                       project --------------------       -----------------------------------------user_id | name     |       |p_id  | name | manager_id | employee_id |--------------------       -----------------------------------------001     | manager  |       p001   |ABC   | 001       | 002002     | employee |

您可以看到,project 表将用户 id 引用为外键(manager_id 和 employee_id)。因为这两个人最初是用户。

我的问题是,当我要显示如下项目详细信息时,如何使用 php laravel(Laravel Framework 5.5.45)分别获得这些用户?

Project-------------------------project Name : ABCManage By : managerConduct By : employee-------------------------

我找到了 MySQL 查询,但我现在还不能在这里发布。我忘了为那个堆栈溢出链接添加书签。

最佳答案

您可以为此使用 Eloquent 关系。在您的项目模型中使用两个关系,如下所示:

class Project extends Model
{
public function manager()
{
return $this->belongsTo(User::class, 'manager_id');
}

public function employee()
{
return $this->belongsTo(User::class, 'employee_id');
}
}

所以在 View 中它会是这样的

Project Name : {{ $project->name }}
Managed By : {{ $project->manager->name }}
Conduct By : {{ $project->employee->name }}

查看 Laravel Eloquent 关系 here

关于php - 如何从 laravel 中的那个表中使用两个外键从单个表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57541981/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com