如何解决试图获取非对象的属性“价格”
我正在使用 Laravel 5.8 开发我的项目,在这个项目中,我想检查用户的购物车价格是否超过自定义数字(也应该从数据库获取),然后打印 { {1}}。
所以为了做到这一点,我添加了这个:
Your delivery is free
参考这一行:
@foreach(\App\Shop\ProductDelivery::find(1) as $delivery)
@if($cartPrice >= $delivery->price)
<i>
You delivery is free
</i>
@endif
@endforeach
但是价格已经存在于数据库中:
那么这里出了什么问题?我该如何解决这个问题?
解决方法
\App\Shop\ProductDelivery::find(1)
只返回一条记录,因此在这种情况下使用 foreach 会导致您的问题。要解决它,您可以将代码更改为:
@php
$delivery = \App\Shop\ProductDelivery::find(1)
@endphp
@if($delivery && $cartPrice >= $delivery->price)
<i>
You delivery is free
</i>
@endif
或者如果你仍然想使用 foreach 虽然它不是必需的:
@foreach(\App\Shop\ProductDelivery::where('id',1)->get() as $delivery)
@if($cartPrice >= $delivery->price)
<i>
You delivery is free
</i>
@endif
@endforeach
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。