В Rails 3.1.3 с Postgresql, если вы создаете атрибут как datetime, его класс с ActiveSupport :: TimeWithZone.Однако любой, кто может объяснить это:
user=User.first
user.update_attributes(:last_signed_in_at => Time.now) #True, but record isn't updated
user.update_attribute(:last_signed_in_at, Time.now) #True, and record is updated
user.last_signed_in_at = Time.now
user.save #True, and the record is updated
update_attributes, отличается от update_attribute тем, что проверяет проверки.Единственная причина, по которой он не работает, может быть:
user.last_signed_in_at = ActiveSupport::TimeWithZone
Time.now.class = Time
Кто-нибудь, кто может разобраться с этим?