私のサーバーにはシステムタイムゾーン「ヨーロッパ/パリ」があります
Railsアプリ(Rails 3.29)を構成しましたconfig.time_zone='ヨーロッパ/ロンドン'config.active_record.default_timezone=:utc
すべてのイベントの開始/終了日は、次のようにデータベースに保存されます: "2013-01-02 10:00:00"
問題はスコーピングにあります
scope :starting, lambda {|start_date_time|
{:conditions => ["starts_at = ?", Event.db_datetime(start_date_time)] }
}
...
def self.db_datetime(date_time)
Time.at(date_time.to_i).utc.to_s(:db)
end
start_date_timeフィルターを作成すると、システムのローカルタイムゾーン日時が取得されますstart_date_time = Time.new(2013、1、2、10、0、0)2013-01-02 10:00:00 +0100
and Event.db_datetime(start_date_time) gives "2013-01-02 09:00:00"
which cannot be found
utc datetimeを強制する方法はありますか:start_date_time = Time.new(2013、1、2、10、0、0)は2013-01-0210:00:00UTCを与えます
フィードバックをありがとう