1

我创建了一个 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其视为一个范围而不是一个整数,我该如何解决这个问题?

4

1 回答 1

5

rand()在 Ruby 1.9.3 中添加了范围支持。您可能在 Heroku 上运行 1.9.2(默认)。ruby "1.9.3"您可以通过添加到您的 Gemfile在 Heroku 上运行 1.9.3 。

于 2013-02-13T02:43:10.063 回答