我有两个桌子食物表和餐厅表,它们都与餐厅ID相关
这是食物模型中的关系
public function restaurant(){
return $this->belongsTo('AppRestaurant');
}
这是食物桌
$table->bigIncrements('id');
$table->timestamps();
$table->integer('price');
$table->integer('food_item');
$table->integer('restaurant_id');
这就是餐厅模式中的关系
public function foods(){
return $this->hasMany('AppFood');
}
当用户输入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.'%');
});
}
你缺少 get((。
public function search(Request $request){
$foodsAll = Restaurant::whereHas('foods',function($query) use ($request){
$query->where('food_item','like','%'.$request->q.'%');
})->get();
}