Php 如何使用外键从laravel中的另一个表中获取所需的列

Php 如何使用外键从laravel中的另一个表中获取所需的列,php,mysql,laravel,eloquent,model,Php,Mysql,Laravel,Eloquent,Model,因此有两个表: products (model name: Product) categories (model name: Category) products表中包含的列名为prd\u cat\u id,这是一个外键,参考类别表中的cat\u id。每个产品都属于一个类别 我想在它们之间建立一种关系,这样每当我想从产品表中获取数据时,也可以获取类别的名称 产品型号和类别表: 类产品扩展模型{ 使用HASSFactory; } 类类别扩展模型{ 使用HASSFactory; } 在类别中有

因此有两个表:

products (model name: Product)
categories (model name: Category)
products
表中包含的列名为
prd\u cat\u id
,这是一个
外键,参考类别表中的
cat\u id
。每个
产品
都属于一个
类别

我想在它们之间建立一种关系,这样每当我想从
产品
表中获取数据时,也可以获取
类别
的名称

产品型号和类别表:

类产品扩展模型{
使用HASSFactory;
}
类类别扩展模型{
使用HASSFactory;
}
类别中有4列
(cat_id,cat_name,cat_desc,cat_image)
,但我只想对
产品
表的数据使用
cat_name


如何获取相应的数据?我想在刀片模板中输出结果。

以加入另一个不使用
id
的表。您需要指定密钥

如果您有一对一关系,则可以使用此
hasOne
关系

产品
模型中获取类别数据

return $this->hasOne('App\Models\Category', 'foreign_key', 'local_key');

有关更多信息,请参见使用id、cat_id的其他表格您需要匹配
prd_cat_id
cat_id
,以获取数据。对吗?因此,在上述关系中分别指定这些键。有时会混淆,所以通过交换关系中给定的值来验证键。