Show user only those products which he hasn't buyed using laravel eloquent code example

Example 1: show user only those product which he hasn't buyed laravel eloquest

$user_id = auth()->user()->id;

Product::where('status', 'active')
  ->whereNotIn('id', function($query) use ($user_id) {
    $query->select('product_id')->from(new OrderProduct->getTable())
      ->where('user_id', $user_id)->where('status', 'delivered')
		->pluck('product_id')->toArray();
  });

Example 2: show user only those products which he hasn't buyed laravel eloquent

$user_id = auth()->user()->id;

Product::where('status', 'active')
  ->whereNotIn('id', function($query) use ($user_id) {
    $query->select('product_id')->from((new OrderProduct)->getTable())
      ->where('user_id', $user_id)->where('status', 'delivered')
		->pluck('product_id')->toArray();
  });

Tags:

Php Example