ruby on rails-Heroku Rake任务不理解Rand方法



我创建了一个rake任务,其中有一行

number = rand(1..10)

当我在我的开发机器上运行这个时,一切都很好,然而,当我在Heroku上运行它时,我返回了一个错误

rake aborted!
can't convert Range into Integer
/app/lib/tasks/sample_data.rake:57:in `rand'

我应该注意到,在rake任务的早期,我运行了rand(111)。我不得不假设问题是由我为rand设置了一个起点和终点以供选择引起的。

因此,最大的问题是,为什么Heroku将rand视为一个范围,而不是一个整数,我该如何解决这个问题?

Ruby 1.9.3中增加了rand()中的Range支持。您可能在Heroku上运行1.9.2(默认值)。通过在Gemfile中添加ruby "1.9.3",您可以在Heroku上运行1.9.3。
  • http://www.ruby-doc.org/core-1.9.2/Kernel.html#method-i-rand
  • http://www.ruby-doc.org/core-1.9.3/Kernel.html#method-i-rand

相关内容

  • 没有找到相关文章

最新更新