Поле DateTime может хранить только «ГГГГ-ММ-ДД ЧЧ: ММ: СС» ( MySQL ), без информации о часовом поясе.
Вы должны хранить дату и время в формате UTC, а часовой пояс - в другом поле, предпочтительно в виде целого числа, указывающего смещение от времени UTC в минутах.
Вы можете извлечь смещение следующим образом:
ruby-1.9.2-p180:001:0>> require 'active_support/all' # included by Rails by default
# => true
ruby-1.9.2-p180:002:0>> dt = DateTime.parse "Wed, 22 Jun 2011 09:43:58 +0200"
# => Wed, 22 Jun 2011 09:43:58 +0200
ruby-1.9.2-p180:003:0>> dt.utc_offset
# => 7200
ruby-1.9.2-p180:004:0>> dt.utc
# => Wed, 22 Jun 2011 07:43:58 +0000
EDIT:
и в оба конца упражнение
ruby-1.9.2-p180 :039 > u.utc.new_offset(u.offset)
=> Wed, 22 Jun 2011 09:43:58 +0500
ruby-1.9.2-p180 :040 > u
=> Wed, 22 Jun 2011 09:43:58 +0500