在我的Laravel项目中,查询不起作用。
以下代码没有输出。
$data['result'] = Songs::where('is_active','=','1')->get()->sortByDesc('created_at');
if (!empty($key)) {
$data['result'] = $data['result']->where('key','LIKE',DB::raw("CONCAT('%', $key, '%')"));
}请帮我解决这个问题
我也尝试过以下
->where('sale_property.property_ref_id', 'LIKE', DB::raw("CONCAT('%', $key, '%')"))
发布于 2021-04-24 08:46:49
如果您想要进行更多的查询,只需将->get()放在最后。
下面是一个例子:
$data['result'] = Songs::where('is_active','=','1')->orderBy('created_at','DESC');
if (!empty($key)) {
$data['result'] = $data['result']->where('key','LIKE','%'. $key .'%');
}
$data['result'] = $data['result']->get();发布于 2021-04-25 18:48:37
上面的答案是正确的,但是您可以从拉勒维尔中添加一些美丽
$data['result'] = Songs::where('is_active', '1')
->when($key, function ($query, $key) {
return $query->where('key', 'LIKE', '%' . $key . '%');
})->orderByDesc('created_at')->get();https://stackoverflow.com/questions/67240821
复制相似问题