【发布时间】:2020-01-06 07:02:42
【问题描述】:
因此,使用纯 PHP 和 MySQL,例如,我可以摆脱过滤查询。 $sql = 从用户中选择*;然后我有下拉菜单,国家省和地区。
如果用户未选择任何内容,请单击获取报告显示所有用户。如果用户从下拉菜单中选择任何内容,例如。国家 然后应根据所选国家缩小结果范围。用户也可以在所有下拉菜单上实现相同的功能。
所以我正在尝试使用 Laravel 归档相同的内容,我将向您展示我的代码。
我已经选择并加入了表格,并恢复了我的结果。如果设置了 dropdwon 值,我试图在结果中添加一个位置,但它并没有像我期望的那样给我结果
$results = DB::table('people')
->leftJoin('contacts', 'people.id', '=', 'contacts.person_id')
->leftJoin('provinces', 'contacts.province_id', '=', 'provinces.id')
->leftJoin('nationalities', 'people.nationality_id', '=', 'nationalities.id')
->leftJoin('districts', 'contacts.district_id', '=', 'districts.id')
->select('people.*', 'contacts.*', 'provinces.name AS province_name',
'nationalities.name AS nationality', 'districts.name AS district_name');
if (request()->has('nationality_id')) {
$nationality_id = request('nationality_id');
$results->where('people.nationality', '=', $nationality_id)->get();
}
return view('reports.index', compact('results', 'nationalities', 'provinces'));
我希望如果我选择下拉列表并喜欢省份,它会过滤集合,并选择所选省份的值。
【问题讨论】: