Rails find_each无效

时间:2016-11-03 19:44:19

标签: ruby-on-rails ruby activerecord heroku clockwork

目前,我在Rails应用程序中通过发条触发了SuckerPunch作业。

User.find_each do |user|
    puts "Found user: #{user.name}!"
end

# Doesn't work, too.
User.all.each do |user|
    puts "Found user: #{user.name}!"
end

但是,搜索用户时执行会停滞不前。将EnumeratorUser.find_each.inspect)打印到控制台时,会显示用户。为什么赢得区块运行?可能缺少Rails上下文?

它让我疯狂了好几个小时。我正在部署到Heroku,顺便说一下。

编辑:我发现错误:Primary key not included in the custom select clause

提前致谢!

1 个答案:

答案 0 :(得分:0)

由于数据库中的用户数量,我怀疑您遇到了某种限制。您是否尝试过使用find_in_batch?

http://apidock.com/rails/ActiveRecord/Batches/find_each(使用find_in_batch,默认batch_size为1000) http://apidock.com/rails/ActiveRecord/Batches/find_in_batches(请注意上一篇文章)