Как мне найти объединение двух массивов моделей по атрибуту модели в Rails 3? - PullRequest
0 голосов
/ 19 января 2011

У меня есть массив друзей FB current_user и другого пользователя, которые принадлежат данному событию.

Мне нужно найти всех друзей FB current_user, которые также принадлежат этому событию.

Попробовал это в моем events_controller:

@friends = Array.new
@the_others = Array.new
@event.users.each do |user|
  @fb_user.friends.each do |friend|
    if friend.identifier == user.uid
      @friends << user
    else
      @the_others << user
    end
  end
end

Очевидно, что это далеко ... на самом деле это не работает ... кто-то, пожалуйста, поправьте меня: -)

Ответы [ 2 ]

1 голос
/ 19 января 2011

Попробуйте это

@friends = Array.new
@the_others = Array.new
@event.users.each do |user|
   if @fb_user.friends.detect{|friend| friend.identifier == user.uid}
     @friends << user
   else
     @the_others << user
   end
end
0 голосов
/ 19 января 2011
@friends = [1,2]
@the_others = [2,3,4]
union = @friends | @the_others
 => [1, 2, 3, 4] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...