Итерация времени на 24 часа на 30 дней в рубине - PullRequest
0 голосов
/ 29 марта 2012

Я работаю над Google Analytics API, используя гем ruby. Он принимает параметры и генерирует результаты, я выбираю данные из семи метрик. Он принимает время начала и время окончания и генерирует данные в соответствии с прошедшим временем.

Вот образец этого

Visits.results(pro1, {:start_date => Time.now - 86400, :end_date => Time.now})

Что дает мне общее количество посещений за последние 24 часа.

Мое требование немного сложнее. Есть также несколько других метрик. Мне нужно получить данные из Google Analytics за последние 30 дней. Предположим, что если я возьму дамп сегодня, он должен получить данные за предыдущие 30 дней. например, 28-го, 27-го, 26-го, 25-го .... который получает данные за 28 марта 2012 года с 00:00:00 до 28 марта 2012 года 59:59:59, 27 марта 2012 года с 00:00:00 до 27 марта 2012 года 59:59:59 и ...... Я должен пытаться достичь этого с 2-3 дня инруби. Я новичок в рубине. Пожалуйста, помогите мне. Чтобы сделать то, что мне нужно, взять данные из Google Analytics с итерацией в течение 24 часов за последние 30 дней.

Ответы [ 2 ]

1 голос
/ 29 марта 2012

Если вам нужны результаты для отдельных дней

results = []
30.downto(1) do |n|
  results << Visits.results(pro1, {:start_date => Date.today - n.days, :end_date => Date.today - (n-1).days})
end

или если вы хотите, чтобы они были все сразу

Visits.results(pro1, {:start_date => Date.today - 30.days, :end_date => Date.today})

Если вы хотите включить также и сегодня, установите дату окончания наDate.tomorrow

0 голосов
/ 29 марта 2012

Попробуйте

Visits.results(pro1, {:start_date => Date.today.last_month , :end_date => Date.today})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...