原创作者: hideto
阅读:679次
评论:0条
更新时间:2011-05-26
以前我们这样使用TimeZone:
每次我们需要使用时区转换时我们都要写类似task.alert_at = current_user.time_zone.local_to_utc(task.alert_at)的语句
我们可以试试tztime插件,它将set_timezone的逻辑脱离出来:
这样我们不用每次都调用set_timezone,我们用tz_time_attributes来声明哪些属性使用TzTime即可
class TasksController < ApplicationController def create task = account.tasks.build(params[:task]) task.alert_at = current_user.time_zone.local_to_utc(task.alert_at) task.save! end end
每次我们需要使用时区转换时我们都要写类似task.alert_at = current_user.time_zone.local_to_utc(task.alert_at)的语句
我们可以试试tztime插件,它将set_timezone的逻辑脱离出来:
class ApplicationController < ActionController::Base around_filter :set_timezone private def set_timezone TzTime.zone = current_user.time_zone yield TzTime.reset! end end class Task < ActiveRecord::Base tz_time_attributes :alert_at end class TasksController < ApplicationController def create task = account.tasks.create(params[:task]) end end
这样我们不用每次都调用set_timezone,我们用tz_time_attributes来声明哪些属性使用TzTime即可
评论 共 0 条 请登录后发表评论