我在理事会和ManagementUnit之间存在多对多关系。关联的实体每年都在变化,因此数据透视表如下所示:

council_id
management_unit_id
year

我的问题是,同一组合的Council_id + management_unit_id组合键可能会出现几次,所以我不知道如何对模型进行attach()或detach()。例如,如果我有这个:
council_id | management_unit_id | year
1          | 1                  | 2010
1          | 1                  | 2011
1          | 1                  | 2012

我如何仅在2011年将Council(1)与ManagementUnit(1)分离?
或我将在2013年如何将理事会(1)附加到ManagementUnit(1)?

使用Laravel 5.1

最佳答案

不知道您的关系如何设置,因此您可能需要稍作调整。但尝试一下:

$managementUnit = ManagementUnit::find(1);
$managementUnit->councils()->where('id', 1)->wherePivot('year', 2011)->detach(1);

09-04 00:54