我有两个桌子的食物表和餐厅表,它们都与餐厅ID相关联
这是食物模型中的关系
public function restaurant(){
return $this->belongsTo('App\Restaurant');
}
这是食物表
$table->bigIncrements('id');
$table->timestamps();
$table->integer('price');
$table->integer('food_item');
$table->integer('restaurant_id');
这是餐厅模型中的关系
public function foods(){
return $this->hasMany('App\Food');
}
当用户输入输入q作为食品的搜索项时,我需要它来生成所有根据搜索项搜索该食品的餐厅
这是我写的查询,但是当我返回json_encode($ foodsAll);时返回0个结果;
public function search(Request $request){
$foodsAll = Restaurant::whereHas('foods',function($query) use ($request){
$query->where('food_item','like','%'.$request->q.'%');
});
}
答案 0 :(得分:0)
您缺少get()。
public function search(Request $request){
$foodsAll = Restaurant::whereHas('foods',function($query) use ($request){
$query->where('food_item','like','%'.$request->q.'%');
})->get();
}