-1

红宝石现时投掷的错误添加现时红宝石

require 'date' 
nonce = DateTime.now.to_i 

错误:

undefined method `to_i' for #<DateTime:0x000000015336e8> (NoMethodError) 

在我的控制台中它给出正确的值

2.1.0 :014 > nonce = DateTime.now.to_i 
=> 1405065242 

为什么它会引发错误编程?

编辑

是否有任何的方式来增加随机数。条件是它应该是一个整数,必须在每个后续请求中递增

+2

它不工作? – sevenseacat

+0

如果你使用'irb',那么它可能会引发错误。 – Pavan

+0

为什么反对投票? – Sam

回答

0

由于Pavan sais,如果您在irb中运行代码,它可能无法工作了。

根据doc,Ruby在DateTime类中没有方法to_i。

但是,Rails的覆盖DateTime类有一个to_i方法:

所以,我觉得你在运行一个Ruby on Rails的环境whick工作的命令,这就是为什么它的工作原理。但是如果你在没有Rails的Ruby环境下运行,它将无法工作。

希望它有帮助。

+0

有什么办法可以添加现时。条件是它应该是一个整数,必须在每个后续请求中增加 – Sam