Laravel 拉维集合查询

Laravel 拉维集合查询,laravel,eloquent,laravel-blade,Laravel,Eloquent,Laravel Blade,我编写了一个查询来获取结果集合,我添加了一个检查来说明记录是否包含此字段隐藏id为2的记录 控制器方法 $purchasedProducts = $user->products()->where('purchased', 1); if ($user->products()->where('includes_bonus', 1)->first()) { $purchasedProducts->where('benefi

我编写了一个查询来获取结果集合,我添加了一个检查来说明记录是否包含此字段隐藏id为2的记录

控制器方法

  $purchasedProducts = $user->products()->where('purchased', 1);
        if ($user->products()->where('includes_bonus', 1)->first()) {
            $purchasedProducts->where('benefits.id', '!=', 2);
        }

        $purchasedProducts->get();
Trying to get property 'id' of non-object

 <form action="<?php echo e(route('cancel.product', $product->id)); ?>" method="POST">
刀片

在这里,我写出了要在刀片中显示的foreach循环

 @foreach($purchasedProducts as $product)
                <div class="col-xl-6 p-0 p-xl-4 mb-5 mb-xl-0">
                    <form action="{{route('cancel.product', $product->id)}}" method="POST">
                        @csrf
@foreach($purchasedProducts作为$product)
@csrf
收到错误

  $purchasedProducts = $user->products()->where('purchased', 1);
        if ($user->products()->where('includes_bonus', 1)->first()) {
            $purchasedProducts->where('benefits.id', '!=', 2);
        }

        $purchasedProducts->get();
Trying to get property 'id' of non-object

 <form action="<?php echo e(route('cancel.product', $product->id)); ?>" method="POST">
尝试获取非对象的属性“id”

您没有将查询结果分配给任何对象,您只是对正在生成的查询调用
get()
,但没有对返回的结果执行任何操作。可能将其分配给一个变量:

$purchasedProducts = $purchasedProducts->get();

您没有将查询结果分配给任何对象,您只是对正在生成的查询调用
get()
,但没有对返回的结果执行任何操作。可能将其分配给一个变量:

$purchasedProducts = $purchasedProducts->get();

您从未执行过使用
$purchasedProducts
生成的查询,它仍然是一个生成器,而不是一个结果我将如何修改上述内容您介意提供答案吗?您从未执行过使用
$purchasedProducts
生成的查询,它仍然是一个生成器,没有结果我怎么修改上面的内容你介意提供一个答案吗?