Spec-Zone.ru › Ruby on Rails 7.1

класс ActiveModel::Type::DateTime

Родитель:
Значение
Включенные модули:
ActiveModel::Type::Helpers::Timezone, ActiveModel::Type::Helpers::TimeValue

Тип DateTime модели Active Model

Тип атрибута для представления дат и времени. Он зарегистрирован под ключом :datetime.

class Event
  include ActiveModel::Attributes

  attribute :start, :datetime
end

event = Event.new
event.start = "Wed, 04 Sep 2013 03:00:00 EAT"

event.start.class # => Time
event.start.year  # => 2013
event.start.month # => 9
event.start.day   # => 4
event.start.hour  # => 3
event.start.min   # => 0
event.start.sec   # => 0
event.start.zone  # => "EAT"

Значения String парсятся с использованием формата даты и времени ISO 8601. Также принимаются частичные форматы, только для времени.

event.start = "06:07:08+09:00"
event.start.utc # => 1999-12-31 21:07:08 UTC

Степень точности долей секунды может быть настраиваема при объявлении атрибута:

class Event
  include ActiveModel::Attributes

  attribute :start, :datetime, precision: 4
end

Публичные методы экземпляров

type() Показать исходный код
# File activemodel/lib/active_model/type/date_time.rb, line 49
def type
  :datetime
end

© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API