在我的應用程序中,我將記錄以UTC格式存儲在數據庫中。我只是希望在用戶端顯示這些記錄時結果將根據用戶的時區進行搜索。意思是在發起查詢時我只想根據用戶的時區搜索記錄。MySql和Rails中的時區
2
A
回答
0
我想你可以通過你的應用程序的config
選項設置時區:
How to change default timezone for Active Record in Rails?
#config/application.rb
config.time_zone = 'London'
config.active_record.default_timezone = :local
1
爲了顯示不同的時間取決於你所需要從某處抓住他們的區域的用戶。這有幾個選項(他們可能會將其設置在他們的個人資料中,您可能會針對不同的語言使用不同的網址,或者您可能會從他們的會話中獲得)。關於setting the locale的rails internationalization指南部分有更多信息。
基本上你需要設置I18n.locale
是爲用戶的語言環境。這是從指南application_controller.rb
的例子(假設你有一個語言環境參數):
before_action :set_locale
def set_locale
I18n.locale = params[:locale] || I18n.default_locale
end
然後,一旦你有你需要本地化的實時顯示用戶的語言環境。此外,還有在引導更多的信息,但基本上你需要調用輔助方法localize
(別名爲l
太):
localize(Time.now)
或
l(Time.now)
1
來顯示不同的時間取決於用戶的瀏覽器time.you可以通過javascript代碼獲取他們的瀏覽器時間(本地時間)並將其存儲到cookie中。然後將時間設置爲rails時區。
確保已安裝jquery.cookie
var browser_time = new Date();
$j.cookie('time_zone', browser_time.getTimezoneOffset())
添加過濾器之前設置護欄時區
before_filter :set_timezone
def set_timezone
if !request.cookies["time_zone"].blank?
min = request.cookies["time_zone"].to_i
Time.zone = ActiveSupport::TimeZone[-min.minutes]
end
end
相關問題
- 1. Rails時區與MySQL時區
- 2. MySQL和時區
- 3. Rails,Postgres和時區
- 4. MySQL和PHP時區
- 5. Rails和在created_at時區
- 6. Rails時區和cron調度
- 7. 處理rails + postgres和時區
- 8. Rails的時區和夏令時
- 9. 在Rails和Java中使用時區
- 10. 忽略Rails中的時區
- 11. Rails 3.1時區UTC和中心時區混淆
- 12. mySQL TIME函數和時區
- 13. 在PHP和MySQL中處理時區
- 14. 在PHP和MySQL中處理時區?
- 15. Rails時間類型和時區
- 16. PHP和MySQL時區,同時支持用戶定義的時區
- 17. Java和MySQL中的時間戳和時區轉換
- 18. Laravel在MySQL中的時區
- 19. PHP,Date,MySQL ...中的時區?
- 20. rails,postgres,時區和範圍的問題
- 21. 從偏移量和dst的Rails時區
- 22. Rails時區
- 23. 幫助Rails中所著的Grokking時間和時區的3
- 24. LIKE和= MYSQL中的區別?
- 25. 在Rails中保留時區
- 26. date_default_timezone_set(「時區」)和MySQL時間戳
- 27. 使用用戶時區的MySQL和PHP
- 28. PHP和MySQL之間的時區差異
- 29. PHP和MySQL紀錄的個體時區
- 30. MySQL的時區表
我只想當搜尋到數據庫中我想我的查詢將自動轉換對於當地時區而言,它將根據此結果產生結果。 – user3269886