Laravel确定同步是否可能



我发誓有可能做这样的

$user->roles()->where('role_column', 'value')->sync( array( 1, 2, 3 ) );

这样我就可以同步关系,并且只影响符合查询的关系。本质上使用查询来比较id,并且只有在查询找到与查询匹配的情况下才分离不在给定数组中的id。

这不可能吗?

我知道pivot查询确实实现了这一点,所以也许我混淆了。那不是我需要的。

感谢

我能找到的唯一解决方案是

1查询当前连接的所有ID,获取这些ID

2查询当前附加了我想要的过滤器,获得那些ID

3获取diff数组(来自1的ID不在2中(

4同步我想要的ID,与来自3 的ID合并

最新更新