关于 Laravel 5 组合 sql 的问题

刚刚接触 laravel 不久,最近在写一个公司的项目,需要用到多个条件组合查询,遂写了如下代码



$sql = 'Brand::where("fi_holder_id",$uid)->where("fi_is_follow",1031)';

    `if($request->route('ent_name')){`
        `$sql .= '->where("fs_apply_name",$request->route("ent_name"))';`
    `}elseif($request->route('cate')){`
        `$sql .= '->where("fi_category",$request->route("cate"))';`
    `}elseif($request->route('app_order')){`
        `$sql .= '->orderBy("ft_apply_datetime",$request->route("app_order"))';`
    `}elseif($request->route('cate_order')){`
        `$sql .= '->orderBy("fi_category",$request->route("cate_order"))';`
    `}`

    `$sql .= '->skip($offset)->take($limit)->get()->toArray();';`

    `$brand_list = eval($sql);`



问题是这样的,我组合了查询条件,但是最后一步 eval 的时候,提示 “Class 'Brand' not found”,因为 Brand 是 use 引用的,所以可能无法在 eval 中使用,想请问各位大神有没有好的解决办法,如果没有的话我就只能拼原生 sql 了

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。