Как мне объединить две записи и вернуть данные таблицы?
Я использую драгоценный камень Коала, чтобы завести друзей на Facebook.
Как соотнести эти результаты с пользователями базы данных?
код
facebook = Koala::Facebook::API.new(params[:facebook_access_token])
friends = facebook.get_connections("me", "friends")
вернуть
[
{
"name": "Mick Fanning",
"id": "9523891481361"
},
{
"name": "Gabriel Medina",
"id": "9523891483211"
}
]
Идея:
join = friends.map {|u| {
:user => user = User.where(provider_uid: u['id']).first,
:provider_uid => u['id'],
:name => u['name']
}}
Это будет генерировать много запросов...
Как мне объединить две записи и вернуть данные таблицы?
1 ответ
Решение
Во всяком случае, кажется, я получил вашу потребность. Сделайте запрос первым.
users = User.where(provider_uid: friends.map { |h| h['id'] })
users.map do |u|
{
:user => u,
:provider_uid => u.id,
:name => friends.find { |f| f['id'] == u.id }['name']
}
end