我在对象数组中有一个嵌套的对象数组。
Pages
hasMany sections
我试图取消嵌套部分并重置其数组键,但无济于事。
foreach ($pages as $pageKey => &$page) {
foreach ($page->sections as $sectionKey => $section) {
// Remove sections with no questions
if ($section->questions->count() < 1) {
$page->sections->forget($sectionKey);
}
}
$page->sections = $page->sections->values()->all();
}
但是,分区键没有被重置。
答案 0 :(得分:0)
(我想)您要尝试做的是将所有Page
个与Section
个具有至少Comment
个的$pages = Pages::with(['sections' => function ($query) {
$query->has('comments');
}])
->get();
s一起使用。为了完成此操作,您可以在一个查询中完成此操作:
Section
有了这个,您就渴望加载与每个Page
相关的% git log --format='%H' -n5
4f4716883559a9e8e17e37a02ec4face77b1b5f3
08b3f398e2c63a83d02e0279ffa3f156c2631828
5e38051582e898d317a4906e4ff85377d71764bd
424ab5eaf924d2d4ead36c91847ef3df18f7fa64
f402ef630d9ee5755ceb9059d9627b3e9fb64d63
,而只是加载至少链接有一个Comment的那些。
您可以查看与此主题相关的文档: