Я собираю небольшую игру, в которой люди голосуют, чтобы увидеть, как два других человека подходят друг другу, исходя из интересов, в которые они ранее вступили, и у меня возникают проблемы с получением кода, который делает то, что я хочу. У нас есть некоторые данные об их "друзьях", и я хотел бы сделать следующее:
- Выберите одного из своих "друзей"
- Найти совпадение этого друга
- Если я не могу найти совпадения друзей, за которые ранее голосовал, получим случайное совпадение
Я бы хотел, чтобы шаги 1 и 2 были несколько случайными, чтобы они не видели друга каждый раз. Я сейчас записываю голоса, поэтому у меня уже есть список их голосов. Это то, что у меня есть, но я не могу понять, как соединить их вместе.
found_new_match = false
#Try connected users first
# connected_users = current_user.get_connected_users
connected_users = []
unless connected_users.blank?
user = connected_users.shuffle.first
@match = user.matches.first
end
# Here i'd like to detect whether we got through all our connections' matches
while found_new_match == false do
found_new_match = true if @match = current_user.get_random_new_match
end