Php 如何计算Post(Laravel事件侦听器)的视图数?
我试图计算我的产品的浏览量。为此,在我的产品表中有一列Php 如何计算Post(Laravel事件侦听器)的视图数?,php,laravel,laravel-5,Php,Laravel,Laravel 5,我试图计算我的产品的浏览量。为此,在我的产品表中有一列查看\u计数。我正在尝试用事件侦听器实现它 这是我的活动代码: productwasview.php 我使用事件侦听器的控制器: public function singleProduct(Request $request) { $name = $request->name; $product = DB::table('products') ->wh
查看\u计数
。我正在尝试用事件侦听器实现它
这是我的活动代码:
productwasview.php
我使用事件侦听器的控制器:
public function singleProduct(Request $request)
{
$name = $request->name;
$product = DB::table('products')
->where('name' , '=', $name)
->where('status','=',1)
->first();
Event::fire(new ProductWasViewed($product));
}
我得到的错误是:
类型错误:参数1传递给
App\Events\ProductWasViewed::\uu construct()必须是的实例
App\Modules\Product\Models\Product,给定的stdClass实例
我如何解决这个问题?请提供帮助。查询生成器请求返回
stdClass
对象。您需要在此处使用雄辩来获取产品
对象:
$product = Product::where('name', $name)->where('status', 1)->first();
'App\Events\ProductWasViewed' => [
'App\Listeners\IncrementProductViewCount',
],
public function singleProduct(Request $request)
{
$name = $request->name;
$product = DB::table('products')
->where('name' , '=', $name)
->where('status','=',1)
->first();
Event::fire(new ProductWasViewed($product));
}
$product = Product::where('name', $name)->where('status', 1)->first();