RTa*_*Tan 14 mysql sql laravel-4
我是Laravel的新手,目前正在与Laravel4合作.我正在尝试在我的项目中添加多列搜索功能.我可以做单列口才搜索查询,但老实说我不知道如何做多列滔滔不绝的搜索查询laravel.我有两个下拉菜单
1.Locatiom 2.blood group.
我要搜索的用户有一定的血型对某些位置.那是,用户将选择一个位置和血型来自这两个在时间下拉菜单,然后点击搜索按钮.
在我的数据库中,我有两列,一列包含位置,另一列包含某个用户的血型.现在,这种搜索的雄辩查询应该是什么?
Jar*_*zyk 38
只需链接where
您需要搜索的每个字段:
// AND
$results = SomeModel::where('location', $location)->where('blood_group', $bloodGroup)->get();
// OR
$results = SomeModel::where('location', $location)->orWhere('blood_group', $bloodGroup)->get();
Run Code Online (Sandbox Code Playgroud)
由于范围的原因,您可以更轻松地使用它:
// SomeModel class
public function scopeSearchLocation($query, $location)
{
if ($location) $query->where('location', $location);
}
public function scopeSearchBloodGroup($query, $bloodGroup)
{
if ($bloodGroup) $query->where('blood_group', $bloodGroup);
}
// then
SomeModel::searchBloodGroup($bloodGroup)->searchLocation($location)->get();
Run Code Online (Sandbox Code Playgroud)
只是一个明智的例子,根据您的需求进行调整.