I want items.myfavourite =true if that items.myfavourite returns not else false. how can i do that

Viewed 25
     $cat_query->with([
          'items' => function ($query) use($type, $id) {
              $query->where($type, $id)->with('image', 'addonCategory.addons', 'reviews');
          },
          'items.myfavourite' => function ($query) use($user_id) {
              $query->where('user_id', $user_id);
          }
      ]);

I want items.myfavourite =true if that items.myfavourite returns not else false. how can i do that

1 Answers

May be you can use this

    $cat_query->with([
        'items' => function ($query) use ($type, $id, $user_id) {
            $query->where($type, $id)
                ->with('image', 'addonCategory.addons', 'reviews')
                ->withCount(['myfavourite' => function ($query) use ($user_id) {
                    $query->select(DB::raw('IF(count(*) > 0, "true", "false")'))->where('user_id', $user_id);
                }]);
        }
    ]);
Related