Php Laravel:模型和轴之间的多对多

Php Laravel:模型和轴之间的多对多,php,database,laravel,eloquent,laravel-8,Php,Database,Laravel,Eloquent,Laravel 8,我正在开发一个Laravel应用程序,其中我提供了以下模型和关系: 在故障和位置之间存在多对多。我还创建了一个轴。检查下面的图像: 现在我有一个新的要求。我需要引进一种叫做成本中心的新模式。在前端,用户可以根据功能和位置组合选择成本中心。检查下面的示例: 我在想怎样才能让这一切继续下去。我的想法是在成本中心和LocationProfunctionpivot之间使用多对多。我的模型模式将更改如下: 这是一个好的解决方案吗?它能工作吗?同时,这也是我将故障和位置模型与轴值连接的方式: $ad

我正在开发一个Laravel应用程序,其中我提供了以下模型和关系:

故障位置之间存在多对多。我还创建了一个轴。检查下面的图像:

现在我有一个新的要求。我需要引进一种叫做成本中心的新模式。在前端,用户可以根据功能和位置组合选择成本中心。检查下面的示例:

我在想怎样才能让这一切继续下去。我的想法是在成本中心和LocationProfunctionpivot之间使用多对多。我的模型模式将更改如下:

这是一个好的解决方案吗?它能工作吗?同时,这也是我将故障位置模型与轴值连接的方式:

$adba1 = Profunction::create(['name' => 'ADBA1', 'description' => 'Product FB Engineering', 'function_long' => 'Product FB Engineering']);

$adba1->locations()->sync([$guangzhou->id => ['hourly_rate' => 56], $hyderabad->id => ['hourly_rate' => 23], $shanghai->id => ['hourly_rate' => 56]]);
是否可以将功能与位置同步,也可以将枢轴与成本中心同步


如果不够清楚,请通知我。提前谢谢

好的,如果您正确地设置了关系,您应该能够像这样访问它们:
$profunction->locations->each->cost\u center
。同步可能与相同的路径,但我还没有尝试过。让我知道这是否对你有用。