Фильтрация результата ответа JSON.parse в Ruby (и геме JSON) - PullRequest
0 голосов
/ 15 ноября 2009

В небольшом приложении, которое я создаю, я использую гем twitter_oauth ( источник методов, которые я использую ), что, кстати, означает, что я имею дело с рубиновым гемом JSON.

Я использую метод сообщений, источник которого следующий:

def messages(page=1)
      oauth_response = access_token.get("/direct_messages.json?page=#{page}")
      JSON.parse(oauth_response.body)
end

Он анализирует JSON, созданный Twitter, используя метод JSON.parse. Теперь я хочу отфильтровать ответ, чтобы показать только сообщения, отправленные определенным пользователем. Другими словами, я хочу иметь возможность получать сообщения об аккаунтах для каждого пользователя.

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

Кто-нибудь знает прагматичный способ сортировки JSON в Ruby?

1 Ответ

2 голосов
/ 15 ноября 2009

Почему вам вообще нужно работать с JSON? JSON.parse возвращает обратно десериализованные структуры (массивы и хэши Ruby), поэтому все, что вам нужно сделать (я полагаю, вы не вставили здесь образец вывода JSON), это сделать select для любого вывода JSON.parse (или в вашем случае метод messages) возвращает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...