我想更改應用程序時區時,CURRENT_USER(設計)被初始化,這樣的:Rails。 CURRENT_USER加載時設置默認時區
Time.zone = current_user.settings(:main).time_zone
什麼是應用最好的地方,把這個代碼在(應用程序控制器,before_filter不是解決方案)?
我想更改應用程序時區時,CURRENT_USER(設計)被初始化,這樣的:Rails。 CURRENT_USER加載時設置默認時區
Time.zone = current_user.settings(:main).time_zone
什麼是應用最好的地方,把這個代碼在(應用程序控制器,before_filter不是解決方案)?
我覺得這裏是最安全的方法是使用around_action像這樣的,一定要指定要這個對發生的操作:
class SomeController < ApplicationController
around_action :set_time_zone, only: :show
private
def set_time_zone
if current_user
Time.zone = current_user.settings(:main).time_zone
end
yield
end
end
爲什麼''ApplicationController''是不是一個解決方案?這將是我的建議... – dgilperez 2015-02-11 13:53:01
Aggree與@dgilperez。 'ApplicationController'''before_filter'是解決方案。 – pierallard 2015-02-11 14:27:11
我不相信更改應用程序時區是正確的方法。如果用戶更改時區怎麼辦? (或者它改變了夏令時? – 2015-02-11 15:28:39