Laravel 8-如何从3个表中创建关系
我有三张桌子:Laravel 8-如何从3个表中创建关系,laravel,Laravel,我有三张桌子: structurals id name indicators id name groupings id structural_id indicator_id 结果: #structural name indicator name indicator name #structuralname indicator name 我使用的方法有很多错误。在这种情况下,指示符可能属于一个或多个结构的。而结构可以有一个或多个指示器 这描述的是一种多对
structurals
id
name
indicators
id
name
groupings
id
structural_id
indicator_id
结果:
#structural name
indicator name
indicator name
#structuralname
indicator name
我使用的方法有很多错误。在这种情况下,
指示符可能属于一个或多个结构的。而结构
可以有一个或多个指示器
这描述的是一种多对多
关系,其中分组
只是一个透视表。因此,您应该使用下面的:
类指示符扩展模型
{
公共职能结构()
{
返回$this->belongtomany(Structural::class,'groupings');
}
}
类结构扩展模型
{
公共职能指标()
{
返回$this->belongtomany(指示符::class,'groupings');
}
}
文件:
您也可以从groupings
表中删除id
列,因为这是不必要的。谢谢您的评论,太好了。先生,我有一个问题。我想为插入数据(id、结构id、指标id、分数、创建时间)添加一个表,如何处理?(结构名称、指标名称、分数、创建位置)在分组之后,您可以向数据透视表添加其他列,并使用->withPivot()方法。因为我将根据分组/数据透视表中的日期每天插入分数。根据你的说法,我是使用数据透视表还是创建一个插入计分表?