我有两个型号。 Shop
和Item
。我正在尝试检索所有的商店,每个商店有两个 - 但是,我无法让它工作。 $shop['items']
的值不会改变。
foreach($shops as &$shop) {
foreach($shop->items as $item) {
$item->formatPreview();
}
$shop = $shop->toArray();
$shop['items'] = array_slice($shop['items'], 2);
}
我如何实现这一点,并且使用 Eloquent 有更聪明的方法吗?
答案 0 :(得分:0)
<强> EDITED 强>
$shops = Shop::with('items')->get();
foreach ($shops as $shop) {
echo 'shop name: '. $shop->name . '<br>';
if($shop->items()->count()) {
foreach ($shop->items()->take(2)->get() as $item) {
echo 'item: ' . $item->name . '<br>';
}
}
echo '<hr>';
}
我在路线封闭中测试了这个,所以请按照你想要的方式格式化。希望它现在正在运作。