迭代数组 - 获取重复值

时间:2014-04-18 03:58:04

标签: ruby-on-rails ruby

我试图在heroku上设置一个运行在用户ID数组中的计划任务,并使用该用户ID执行一个方法,如下所示:

def self.worker_populate_google_stats
   users = ["5", "6", "8"]
   date_object = Date.today - 1

   users.each do |e|
      date = date_object.strftime("%Y%m%d")
      user = User.find(e)
      GoogleRecord.get_and_create(user, date)
   end
end

它成功执行了get_and_create方法,但它为每个用户提供了相同的输出,就好像它一遍又一遍地使用相同的id运行它。

我在这里缺少什么?

<小时/> 的更新

如果我在控制台中运行以下命令,将不同的id传递给User.find()我实际上会得到正确的,唯一的输出,所以我相信问题不在该方法中。< / p>

user = User.find(5)
date_object = Date.today - 1
date = date_object.strftime("%Y%m%d")
GoogleRecord.get_and_create(user, date)

1 个答案:

答案 0 :(得分:0)

我会尝试这样的事情,或许:

users = User.find([5, 6, 8])
date = (Date.today - 1).strftime("%Y%m%d")

users.each do |user|
  GoogleRecord.get_and_create(user, date)
end