Я использую Mongoid для проекта и пытаюсь использовать функцию пакетной вставки, выполнив:
Person.collection.insert(friends)
Где у друзей массив хешей.
К сожалению, я пытаюсь использовать функцию ключа Mongoid для установки идентификатора каждого объекта на свой идентификатор пользователя Facebook. Вот код:
def process_friends(type, friends)
unless friends
@graph = Koala::Facebook::API.new(self.token)
friends = @graph.get_connections('me','friends', {'fields' => 'id,name,picture,education,location,gender'})
end
friends.each do |friend|
friend[:u_id] = friend["id"]
friend.delete "id"
end
Person.collection.insert(friends)
self.update_attributes( process_status: {status: "success", type: type})
end
и в моём определении модели Person:
key :u_id
Это работало, когда я перебирал всех друзей и добавлял их по отдельности, но теперь, когда я перешел к пакетной вставке, он не устанавливает идентификатор каждого человека в u_id.
Есть идеи?