Я хочу такой URI
https://localhost:8000/category/1/3
Первый идентификатор — это Category_id, а второй — Food_id.
Мой маршрут:
Route::get('category/{Category_id?}/{Food_id?}', 'DetailsController@categ');
И в контроллере у меня есть:
public function categ($Category_id,$Food_id)
{
$category = Categories::with('food')->findOrFail($Category_id);
$food = Food::with('restaurant','categories')->findOrFail($Food_id);
return view('category', compact('category','food'));
}
Но выдает ошибку Отсутствует аргумент 2 для App\Http\Controllers\Detailscontroller::categ(). Может ли кто-нибудь сказать, в чем проблема. Я новичок в laravel. Что я хочу сделать, это сначала показать продукты питания на основе category_id, а затем показывает детали продуктов в соответствии с food_id.
Для отображения соответствующей категории продуктов, на мой взгляд, у меня есть
@foreach ($Category as $categories)
<a href="category/{{$categories->Category_id}}">{{$categories->CategoryName}} </a>
@endforeach
и он показывает мне продукты питания. Затем я хочу, когда я нажимаю на любой продукт питания, он показывает мне детали на основе food_id. поэтому мой вид nxt выглядит так:
@foreach ($category->food as $food)
<a href="category/{{$food->Category_id}}/{{$food->Food_id}}">{{ $food->FoodName }}</a>
@endforeach