Если я правильно понимаю ваш вопрос, вам нужны все рецепты для данного пользователя.
Если я посмотрю на ваш запрос, вы начинаете с сводной таблицы, я не думаю, что это правильный подход. Также вы никогда не объявляете предложение WHERE
, чтобы ограничить его конкретным пользователем.
Сделай это шаг за шагом. Вы хотите получить все для конкретного пользователя, поэтому давайте начнем с таблицы User
$allRecipesForUser = DB::table('users')->where('id', $id)->get();
У пользователя может быть много рецептов
$allRecipesForUser = DB::table('users')
->join('recipes', 'users.id', '=', 'recipes.user_id')
->where('id', $id)
->get();
И рецепт может иметь много вкусов, а вкус может быть во многих рецептах
$allRecipesForUser = DB::table('users')
->join('recipes', 'users.id', '=', 'recipes.user_id')
->join('flavour_recipe', 'recipes.id', '=', 'flavour_recipe.recipe_id')
->join('flavours', 'flavours.id', '=', 'flavour_recipe.flavour_id')
->where('users.id', $id)
->get();
Надеюсь, это сработает для вас. Дайте мне знать, если это не то, что вам нужно.