Поиск элемента массива по идентификатору, возвращенному коллекцией Active Record в rails - PullRequest
2 голосов
/ 11 ноября 2009

Я пытаюсь синхронизировать участников в БД с внешним источником

Мой план состоял в том, чтобы использовать коллекцию массивов в классе активных записей, и при каждом обновлении для члена, найденного во внешнем источнике, я удаляю эту запись члена в массиве (если она существует), после того как я закончу итерацию внешний источник Я бы перебрал и оперировал членами, оставленными в массиве.

Вопрос в том, как найти индекс для массива с указанным идентификатором?

member_queue    Array[2]    
[0] #<Member:0x7181404> 
    @attributes Hash[9] 
        'name'  "Steve" 
        'id'    "953125641"     
    @attributes_cache   Hash[0] 
[1] #<Member:0x717fb68> 
    @attributes Hash[9] 
    @attributes_cache   Hash[0] 

например, я бы искал id = "953125641", и это вернуло бы 0, чтобы я мог удалить эту запись из массива

1 Ответ

4 голосов
/ 11 ноября 2009

Я бы посмотрел на использование функции index . Это похоже на функцию find_if в C ++ (если это поможет!)

index = member_queue.index {|m| m == "953125641" }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...