【发布时间】:2015-11-20 09:18:53
【问题描述】:
我需要一点帮助。我在我的 laravel 环境中设置了关系,我想检索所有标记为 taken 的 slots。
所以它只是在每个插槽上循环并检查taken 是真还是假。
这就是我的想法......并且一直在尝试
$plateCont = \App\Models\PlateContainer::find(7);
return $freeslots = $plateCont->containerSlots()->get();
foreach ($freeslots as $slot)
{
if($slot->where('taken', false))
{
return $slot->lists('slot');
}
// return $slots;
}
为此,我得到200 状态码,但没有显示任何内容。你能告诉我一个很好的方法来做到这一点。
它只是获取指定id 的所有插槽并检查它们是否为taken。如果它们不是taken,则返回插槽,否则返回all 插槽
更新将get() 链接在containerSlots() 后面。 Foreach 正在返回所有内容。
[
1,
7,
9,
5,
3,
5,
4,
3,
2,
1,
5,
1,
8,
9,
8,
5,
5,
1,
8,
5,
1,
5,
8,
8,
4,
5,
8,
4,
2,
1
]
【问题讨论】:
-
print_r($freeslots)请 -
@aldrin27 哪一行?
-
@user3641381 在
foreach之前 -
@madforstrength 我在
containerSlots()之后添加了get(),但之后foreach 将返回所有slots。我已经更新了代码 -
@aldrin27 已更新。请检查