【发布时间】:2016-08-20 16:23:25
【问题描述】:
我基本上是在使用DateTime.now 在表格中设置DateTime 值列之前计算小时数(如果超过24 小时,则为x 天),但我所有的尝试都导致一个错误,我知道我必须做一些事情,比如尝试减去一个浮点数和一个字符串或其他东西......
我有一个question 表和一个fixture_date 列,这是一个datetime 类型列,到目前为止我已经尝试过:
question.fixture_date - DateTime.now- 错误:
undefined method '-' for nil:NilClass
question.fixture_date - Date.today- 错误:
undefined method '-@' for Tue, 26 Apr 2016:Date Did you mean? -
question.fixture_date - Time.now- 错误:
undefined method '-' for nil:NilClass
它们都返回错误,正确的语法是什么?也许这与datetime 列有关,我应该使用替代方法吗?
【问题讨论】:
-
错误信息是什么?顺便说一句,
question.fixture_date.class的结果是什么? -
我更新了错误消息 :-) 如果我反转它们,前两个返回
expected numeric,最后一个返回can't convert nil into an exact number -
是的,这是你的
fixture_date of question的问题,只要确保它不是零 -
啊,我在数据库中有一个
NILL。我会全部更新并报告。 -
我刚刚详细回答了您收到不同消息的原因,请检查并给我任何反馈:)
标签: sql ruby-on-rails ruby date datetime