[英]Is it possible to append laravel DB queries?
控制器中的代码
public function getAthleteProperties(Request $request)
{
$getAthlete = DB::table('students')
->join('sports', 'students.id', '=', 'sports.athlete');
->select('students.*', 'sports.*')
->get();
if($request->input('gender') == 1)
{
//add this line of queries to $getAthlete queries
->where('gender', "m");
}
else
->where('gender', "f");
if($request->input('active') == 1)
{
//add this line of queries to $getAthlete queries
->where('active', "y");
}
else
->where('active', "n");
return view('admin', compact('getAthlete'));
}
是否可以在laravel中追加查询? 例如,我有上面代码中所示的代码,如果性别的条件为1,活动的条件为1,则$ getAthlete查询的结尾将变成这样。 可能吗? 怎么样?
$getAthlete = DB::table('students')
->join('sports', 'students.id', '=', 'sports.athlete');
->select('students.*', 'sports.*')
->where('gender', "m") //added because condition is true
->where('active', "y") //added because condition is true
->get();
您不必首先使用“ get”方法,因为它执行select语句。
public function getAthleteProperties(Request $request)
{
$getAthlete = DB::table('students')
->join('sports', 'students.id', '=', 'sports.athlete');
->select('students.*', 'sports.*');
if($request->input('gender') == 1)
{
//add this line of queries to $getAthlete queries
$getAthlete->where('gender', "m");
}
else
$getAthlete->where('gender', "f");
if($request->input('active') == 1)
{
//add this line of queries to $getAthlete queries
$getAthlete->where('active', "y");
}
else
$getAthlete->where('active', "n");
$getAthlete = $getAthlete->get();
return view('admin', compact('getAthlete'));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.