0

UPDATE:時區影響軌道3應用

從評論複製下面進行:

我想過使用針對IP地址的網絡服務爲每個訪問者到網站,但後來我想知道用戶在跨時區的地點查看會議,因此時區必須與正在查看的會議的地點相關聯,而不是當時用戶本身的位置。我需要用戶能夠查看會議列表(包括時間和地點),顯示的時間是實際的會議時間,但列出會議的SELECT的WHERE子句需要考慮每個會議地點的時區。


我環顧四周,有很多關於在rails應用程序中使用時區的問題。例如,

問題在於,應用程序需要知道用戶在哪個時區才能正確地運行對數據庫的查詢以檢查未來的日期時間。

我不想常客我的網站需要登錄才能讓他們所以我大意如下的思維正常工作:

  • 管理員用戶登錄到發佈了一個item特別locationdatetime
  • 當保存它使用location[lat,lng]致電Timezone gem捕捉timezonelocation
  • 的項目,我認爲I N EED這timezone被添加到一個額外的字段在同一個模型作爲[lat,lng]datetime(其中軌道保存爲UTC)(https://stackoverflow.com/a/2533323
  • 我需要我的模型到UTC datetime與其各自timezone所以結合,當一個普通用戶來到網頁選擇item爲什麼會產生UTC+timezone datetimes是未來

這聽起來可能/正確的網站?

如果聽起來很混淆,那麼只需在評論中說出來,如果可以的話,我會試着更好一些。

有人可以提供該模型的任何代碼來創建一個virtual attribute(我認爲)結合UTC datetimetimezone字段?

謝謝

回答

0

有沒有國家名單和他們的時區?當用戶來到網站時,根據他所在的國家來確定,而不是嘗試使用原生軌道時區方法。 比如我有created_at PARAMS用戶和表型號:

Time.zone => (GMT+00:00) UTC 
User.last.created_at => Mon, 25 Jun 2012 21:17:25 UTC +00:00 
Table.last.created_at => Mon, 16 Jul 2012 14:08:17 UTC +00:00 

Time.zone = 'Moscow' => "Moscow" 
Time.zone => (GMT+04:00) Moscow 

User.last.created_at => Tue, 26 Jun 2012 01:17:25 MSK +04:00 
Table.last.created_at => Mon, 16 Jul 2012 18:08:17 MSK +04:00 

如何確定國家,你應該尋找寶石或一些服務。我認爲這將是通過他的IP地址確定用戶國家的服務。

+0

我想過爲網站的每位訪問者使用針對IP地址的網絡服務,但後來我想知道用戶在跨時區的位置查看會議,因此時區必須與正在查看的會議的位置相關聯,而不是用戶自己在哪個時刻。我需要用戶能夠查看會議列表(包括時間和地點),顯示的時間是實際的會議時間,但列出會議的SELECT的WHERE子句需要考慮每個會議地點的時區。 – user1116573 2012-08-01 20:15:19