mercredi 16 octobre 2019

How to split query builder in laravel 5.2?

I have three variables and I only want to add certain where clause if those variables are not null or blank.

        $brand = $request->brand == 0 ? "" : $request->brand ;
        $category = $request->category == 0 ? "" : $request->category ;
        $subcategory = $request->subcategory == 0 ? "" : $request->subcategory;

        $items = Item::select('items.*','brands.brand_name','category.category_name','subcategory.subcategory_name')
                    ->leftJoin('brands','items.brand_id','=','brands.id')
                    ->leftJoin('category','items.category_id','=','category.id')
                    ->leftJoin('subcategory','items.subcategory_id','=','subcategory.id');

        if($brand != ""){
            $items->where('items.brand_id',$brand);
        }
        if($category != ""){
            $items->where('items.category_id',$category);
        }
        if($subcategory != ""){
            $items->where('items.subcategory_id',$subcategory);
        }
        $items->get();

Now I am getting 'Illuminate\Database\Eloquent\Builder could not be converted to string' error.



from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/2OR9wGP
via IFTTT

Aucun commentaire:

Enregistrer un commentaire