2016-05-02 5 views
0

Ich habe eine Frage über das Format t.datetime.Datetime-Format in Ruby funktioniert nicht für die Kennung

Wenn ich in den Schienen Konsole so steuern,

Lesson.find(1781).start_time, 

dann

the Tue, 03 May 2016 14:00:00 UTC +00:00

zurückgegeben.

Wenn ich

Classtime.find_by(start_time: 'Tue, 03 May 2016 14:00:00 UTC +00:00') 

gebieten, gibt es gleich Null.

Aber wenn ich

Classtime.find_by(start_time: Lesson.find(1781).start_time) 

gebieten, gibt es

<Classtime id: 4429, start_time: "2016-05-03 14:00:00", created_at: "2016-04-21 15:53:22", updated_at: "2016-04-21 15:53:22"> 

Also ich denke, Lesson.find(1781).start_time auf die Rückkehr von Lesson.find(1781).start_time in gewissem Sinne nicht gleich ist. Wie könnte ich wissen, was das verursacht hat?

Bitte teilen Sie mit mir !!!

Antwort

2

Dies:

Classtime.find_by(start_time: Lesson.find(1781).start_time) 

ist die gleiche wie:

Classtime.find_by(start_time: '2016-05-03 14:00:00') 

, die nicht das gleiche wie:

Classtime.find_by(start_time: 'Tue, 03 May 2016 14:00:00 UTC +00:00') 

Die Datenbank weiß, wie die Zeichenfolge 2016-05-03 14:00:00 auf ein übersetzen Datum, aber nicht die Zeichenfolge Tue, 03 May 2016 14:00:00 UTC +00:00.