我有一个可以与任意数量的项目(其他模型)相关的模型。检索那些类型的数组/项集合的最佳方法是什么,例如
$basket = Basket::find(1);
dd($basket->items); // [Banana, Yoghurt, Bread, Bread, Ham, Cheese, Cheese]
表:basket
| id | int |
| user_id | int |
表:basket_items
| id | int |
| basket_id | int |
| item_id | int |
| item_type | string |
模型:Basket
,Banana
,Yoghurt
,Bread
,Ham
,Cheese
我到目前为止的地方是:我不能在这里使用Eloquent的关系,因为items
方法引用了多个模型。问题是:我可以(可能不知道如何)?
作为一个计划-B我只是实现发出查询的Basket::items
方法,然后获取每个模型并给它们加水。我想知道是否有更好的方法来解决这个问题。