保存(mm / dd / yyyy)日期格式不起作用

时间:2015-05-06 14:32:51

标签: ruby-on-rails date

尝试创建具有过期日期的用户(" 05/30/2015"即" mm / dd / yyyy")但是它会在到期日期返回nil。

u = User.new
=> #<User id: nil, first_name: nil, last_name: nil, email: nil, expiration: nil, remote_id_string: nil, remote_created_at: nil, phone_number: nil, company: nil, created_at: nil, updated_at: nil> 

u.expiration = "05/30/2015"
=> "05/30/2015" 

u.expiration
=> nil

但重新排列格式为(yyyy / mm / dd)

u.expiration = "2015/05/30"
=> "2015/05/30"

u.expiration
=> Sat, 30 May 2015 

我尝试通过安装&#34; gem validates_timeliness&#34;来解决这个问题。我使用&#34; parser.us_use_formats&#34;对于日期格式&#34; 05/30/2015&#34;,它仍然返回nil。

如何解析日期格式,使其不返回nil并接受此(&#34; 05/30/2015&#34; ie&#34; mm / dd / yyyy&#34;)格式?

1 个答案:

答案 0 :(得分:3)

你可以这样使用,

u.expiration = Date.strptime("05/30/2015","%m/%d/%Y")
=> "Sat, 30 May 2015"

u.expiration
=> "Sat, 30 May 2015"