我有一个问题,我如何在产品显示控制器中使用Laravel Query检查显示产品是否在Favourite表中列出。
我的数据库结构
1.收藏夹表-- productid --客户ID
1.产品表-- productid -- productname
1.客户表--客户ID --客户名称
我需要一个查询,以显示所有产品与最喜欢的图标显示在每个产品,如果客户在最喜欢的列表中添加的图标将是红色的
我在视图页面内循环中设置了条件,但是否可以检查查询并显示列名称为isFavourite?
像
@foreach(productsDB as productsRow)
@if (productsRow == FavouriteRow)
<i class="favourite-red">icon-heart</i>
@else
<i class="favourite-white">icon-heart</i>
@endif
@endfor
字符串
2条答案
按热度按时间5rgfhyps1#
这些是模型关系:
字符串
这是一个查询:
型
在刀片中,您可以简单地编写:
型
这种逻辑将使您的刀片文件更干净。
z18hc3ub2#
是的,你可以通过使用Laravel的Eloquent ORM来执行必要的查询来实现这一点。
假设你有Product、Favourite和Customer的模型,并且它们是正确相关的,你可以这样做:
字符串
此查询将获取所有产品沿着一个附加列
isFavourite
,该列对于非收藏产品为空,并包含收藏产品的收藏ID。在Blade模板中,您可以使用此信息显示收藏夹图标:
型
这假设您已经在模型、控制器中正确设置了关系,并且您有方法检索当前已验证用户的ID。如果没有,您可能需要相应地调整代码。