我有两个型号:city和hotel。并且它们有1对n的关系。我希望我的用户能够同时在两个模型中进行搜索。
因此,当我想让我的api在我的用户输入任何单词时被调用时,这是前端关注的问题,但当涉及到搜索时,我就遇到了问题。
我想在2个模型中搜索,以查看任何相似性并返回数据,例如,如果用户键入单词
N我想返回2个对象,1在酒店,1在城市:
New York和
Hotel navara 以下是我在模型中定义的关系:
public function city()
{
return $this->hasOne(City::class, 'id', 'city_id');
}在我的城市模型中:
public function hotel(){
return $this->hasMany(Hotel::class);
}发布于 2019-09-29 22:25:27
您可以像这样使用orWhere
$result = City::orWhereHas('hotel', function (Builder $query) use($request) {
$query->where('name', 'like', '%' . $request->name . '%');
})->orWhere('name', 'like', '%' . $request->name . '%')->get();希望这能有所帮助。
谢谢
https://stackoverflow.com/questions/58155951
复制相似问题