2013-06-12 62 views
1

事件表的結構,找出記錄:表中的如何通過它的日期時間

Event(id: integer, user_id: integer, event_type: string, 
    external_timestamp: datetime, created_at: datetime, updated_at: datetime) 

內容:我想通過它的日期時間找對象

[#<Event id: 1, mailing_user_id: 1, event_type: "Open", 
external_timestamp: "2013-10-05 09:49:11", 
created_at: "2013-06-12 08:54:24", updated_at: "2013-06-12 08:54:24">] 

dt = DateTime.parse("2013-10-05 09:49:11") 
Event.where(:external_timestamp => dt) 

但是這個結構返回空的結果。

也許是因爲日期格式?

Event.first.external_timestamp #=> Sat, 05 Oct 2013 09:49:11 UTC +00:00 

如何寫條件來查找對象的日期時間?由於

+0

,將工作。您可能沒有具有該值的'external_timestamp'的記錄。 –

+0

我已經更新了問題,它具有該日期但沒有返回它的問題。 – megas

+0

沒有理由不起作用,它對我來說工作正常。檢查'dt'是否是正確的解析日期,並檢查'Event.find(1).external_timestamp'。 –

回答

0

的問題是與時區,這要歸功於Mischa,這裏是我如何解決它:

t = Time.zone.parse("2013-10-05 09:49:11") 
Event.where(:external_timestamp => t) # successfully finds the record