我有以下关系:
AT_v1.0
与Users
,morphedByMany
和Customers
具有多对多(Locations
)关系。Vendors
,Customers
和Locations
与Vendors
具有hasMany
或hasManyThrough
关系。我想获取给定Datasets
可以通过其关系访问的Datasets
。另外,通过不同关系的某些数据集可能是相同的,所以我想要一个唯一的列表。
我在User
模型上创建了以下方法,该方法可以正常工作(受Laravel get a collection of relationship items的启发):
User
是否有“正确的方法”或更有效的方法来获得此结果(除了在合并中使用某种reduce函数)?加载模型,然后展平更好吗?关联的值不会经常更改,因此我可以缓存结果,但希望获得一些反馈。