ActiveRecord如何确定日期格式化

时间:2015-09-18 01:38:23

标签: ruby-on-rails ruby activerecord

我正在为我的seeds.rb文件编写一些rails代码,我的模型有一个date字段。例如,我创建了一个对象,如:

 Object.create[{name: 'foo', description: 'bar', when: '\Date.parse("17/9/2015")}]

我唯一得到的错误是NoMethodError: undefined method to_f

我应该将日期作为字符串而不是Date对象输入吗?如果是这样,它应该如何格式化?我搜索了几个小时,但我发现的只是DateTime和Date模块的描述。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

使用实际日期实例:

Object.create[{
  name: 'foo',
  description: 'bar',
  when: Date.parse('17/9/2015')
}]

不是字符串。

答案 1 :(得分:1)

首先,你有一个语法错误:

Object.create[{name: 'foo', description: 'bar', when: '\Date.parse("17/9/2015")}]

更改为:

Object.create(name: 'foo', description: 'bar', when: Date.parse("17/9/2015"))

但最好使用Date类:

Object.create(name: 'foo', description: 'bar', when: Date.new(2015, 9, 17))