基于父表';以laravel表示的s列值

基于父表';以laravel表示的s列值,laravel,eloquent,Laravel,Eloquent,这里我想要的是我想要添加$query->whereNotNull('balance')whereNotNull(“密码”)下面的code>如果对应的产品价格超过500。请看我要生产什么 $productList = Product::where( function ($query) { $query->where('is_status', 1); } )

这里我想要的是我想要添加
$query->whereNotNull('balance')$query->whereNotNull(“密码”)下面的code>如果对应的产品价格超过500。请看我要生产什么

$productList = Product::where(
                function ($query) {
                    $query->where('is_status', 1);
                }
            )
                ->whereNull('errors')
                ->with(['user'])
                ->whereHas(
                    'user',
                    function ($query) {
                        $query->where('is_authenticated', 1);
                        $query->whereNotNull('username');
                        $query->whereNotNull('password');
                    }
                )
                ->get()
                ->take(10);

你从哪里得到这个价格_PRODUCT@GauravGupta,是的,这就是混淆,我的意思是产品的价格应该是产品表的列值,就像在原始查询->产品中一样。价格>500,用户余额不为空这不可能满足您的要求。如果您认为可以进行原始查询,我会将其转换为DB:builder methodYes@GauravGupta,您能否共享DB:builder method以生成相同的输出?我要说的是为我提供一个原始查询,如果您无法这样做,我会为您进行转换
$productList = Product::where(
                    function ($query) {
                        $query->where('is_status', 1);
                    }
                )
                    ->whereNull('errors')
                    ->with(['user'])
                    ->whereHas(
                        'user',
                        function ($query) {
                            $query->where('is_authenticated', 1);
                            $query->whereNotNull('username');
                            $query->whereNotNull('password');
                            if({PRICE_OF_PRODUCT} > 500) {
                              $query->whereNotNull('balance');
                            }
                        }
                    )
                    ->get()
                    ->take(10);