Rails很擅长在MySql中自动插入格式正确的日期时间,而无需我仔细考虑.
然而,为了进行验证,我需要判断存储的mysql日期时间值(ie 2008-07-02 18:00:00)是否大于或小于"now".我可以拨打DateTime.now
或Time.now
,但如何将其转换为mysql喜欢的格式?
谢谢
Rails很擅长在MySql中自动插入格式正确的日期时间,而无需我仔细考虑.
然而,为了进行验证,我需要判断存储的mysql日期时间值(ie 2008-07-02 18:00:00)是否大于或小于"now".我可以拨打DateTime.now
或Time.now
,但如何将其转换为mysql喜欢的格式?
谢谢
可以使用to_s(:db)
将其转换为数据库友好的格式.
Time.now.to_s(:db)
但是,如果在Rails中指定了时区,请小心,因为时间将以UTC格式存储在数据库中.您需要指定它来进行适当的比较.
Time.now.utc.to_s(:db)
您也可以在MySQL中使用NOW()
函数,而不是在Ruby中生成当前时间.