From 1f141f440a48992b32c3402c88ba51e7e8e6320c Mon Sep 17 00:00:00 2001 From: Thomas Hille Date: Mon, 27 Feb 2017 13:50:18 +0100 Subject: [PATCH] added fallback to recommendation if something went completely wrong --- app/models/proxy_exercise.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/models/proxy_exercise.rb b/app/models/proxy_exercise.rb index 3b5b43c4..6f177778 100644 --- a/app/models/proxy_exercise.rb +++ b/app/models/proxy_exercise.rb @@ -32,7 +32,13 @@ class ProxyExercise < ActiveRecord::Base assigned_user_proxy_exercise.exercise else Rails.logger.info("find new matching exercise for user #{user.id}" ) - matching_exercise = find_matching_exercise(user) + matching_exercise = + begin + find_matching_exercise(user) + rescue #fallback + Rails.logger.error("finding matching exercise failed. Fall back to random exercise! Error: #{$!}" ) + exercises.shuffle.first + end user.user_proxy_exercise_exercises << UserProxyExerciseExercise.create(user: user, exercise: matching_exercise, proxy_exercise: self) matching_exercise end