Проблемы, упомянутые в комментариях, значительны, но вот небольшое исправление, чтобы заставить его работать:
def view_all_favorites(customer)
customer_favs = customer.favorites # get favorites from customer
get_res_id = customer_favs.map do |fav_res| # get restaurant IDs from favorites
fav_res.restaurant_id
end
get_res = Restaurant.all.select do |res| # get restaurants from their IDs
get_res_id.include?(res.id)
end
res_names = get_res.map do |res| # get names from restaurants
res.name
end
puts "#{res_names}"
end
Это, вероятно, можно упростить до чего-то вроде этого:
def view_all_favorites(customer)
favorite_restaurants = Restaurant.where(id: customer.favorites.map(&:restaurant_id))
puts favorite_restaurants.map(&:name)
end
Но, как сказал Тадман, предпочтительнее установить отношения, чтобы вам даже не приходилось это делать.