How to save dates in local timezone to db with rails3?

后端 未结 2 1211
悲&欢浪女
悲&欢浪女 2020-12-30 12:43

I have Rails3 application with model user and field expires_at created like this:

t.column :expires_at, :timestamp

In my database (postgres

相关标签:
2条回答
  • 2020-12-30 13:09

    For saving time in local timezone to database this has to be set in application.rb

     config.active_record.default_timezone = :local
    
    0 讨论(0)
  • 2020-12-30 13:24

    If you only want to use local times on certain columns, rather than as a global setting, then the Rails documentation tells us this:

    # If your attributes are time zone aware and you desire to skip time zone conversion to the current Time#zone when reading certain attributes then you can do following:
    
    class Topic < ActiveRecord::Base
      self.skip_time_zone_conversion_for_attributes = [:written_on]
    end
    

    (This also skips time zone conversion on writing, not just reading). And you can pass in an array of symbols for multiple attributes.

    I am not sure which versions of Rails this was introduced in, though.

    0 讨论(0)
提交回复
热议问题