【发布时间】:2021-02-23 15:02:31
【问题描述】:
我正在尝试编写一个查询,该查询获取一组记录并循环遍历它们并将它们全部显示,但如果一条记录包含一个字段为真,我需要它来隐藏特定记录。
用例
- 获取
purchased字段为真的产品集合 - 如果集合中的产品将字段
includes_bonus设置为 true,则列出除 ID 为 2 的bonus产品之外的所有产品
1.
这会抓取所有已购买设置为 true 的产品
$productsPurchased = $user->products()->where('purchased', 1)->get();
2 次尝试
下面我试图做上面的事情,但我运气不好。
-
获取所有已购买设置为 1(true) 的产品
-
if product
includes_bonusas 1(true) 从产品列表中隐藏 id 为 2 的产品记录。$productsPurchased = $user->products()->where('purchased', 1) ->where('includes_bonus', 1) ->where('products.id', '!==', 2) ->get();
刀片
然后我想在刀片中做一个 foreach 列出我的用例的所有产品。
@foreach($purchasedProducts as $purchasedProduct)
<div class="col-xl-6 p-0 p-xl-4 mb-5 mb-xl-0">
<div class="card border">
<div class="card-header border rounded-top"
</div>
<div class="card-block">
@endforeach
【问题讨论】:
标签: laravel if-statement foreach