支持追加内容,补充大部分地方的SubQuery提示

This commit is contained in:
2022-08-10 22:25:45 +08:00
parent fb132cc088
commit 4b3e614a2d
4 changed files with 20 additions and 7 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\Programs;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
@ -15,15 +16,25 @@ class ProgramQueryController extends BaseController
$keyword_split = explode(" ", $keyword);
foreach ($keyword_split as $_keyword) {
if (mb_strlen(trim($_keyword)) > 0) {
$query->where(function ($_query) use ($_keyword) {
$query->where(function (Builder $_query) use ($_keyword) {
$_query
->where("name", "like", "%{$_keyword}%", "or")
->where("difficulty", "like", "%{$_keyword}%", "or")
->where("desc", "like", "%${_keyword}%", "or");
->where("name", "like", "%{$_keyword}%")
->orWhere("difficulty", "like", "%{$_keyword}%")
->orWhere("desc", "like", "%{$_keyword}%")
->orWhereHas("appends", function (Builder $__query) use ($_keyword) {
$__query->where("from", "like", "%{$_keyword}%");
$__query->orWhere(function (Builder $sub_query) use ($_keyword) {
$sub_query
->where("is_original", "=", 0)
->where("name", "like", "%{$_keyword}%");
});
})
;
});
}
}
}
$query->dump();
$programs = $query->paginate(10)->withQueryString();
return view("program.index", [
"keyword" => $keyword,