Атрибуты
Базовые
attribute
ruby
attribute :uuid, from: String, to: :id, as: String, format: :uuidruby
attribute :uuid, from: [String, NilClass], to: :id, as: [String, NilClass], format: :uuid, required: falsestring
ruby
string! :uuid, to: :idruby
string? :uuid, to: :idinteger
ruby
integer! :rating, min: 1, max: 10ruby
integer? :rating, min: 1, max: 10float
ruby
float! :ratingruby
float? :ratingboolean
ruby
boolean! :publishedruby
# не поддерживаетсяОпции
Для метода attribute доступны следующие опции:
from;to;as;format;min;max.
Для хелперов эти опции также доступны, за исключением опции from.
О поддерживаемых значениях для format вы можете узнать здесь.
Хелперы
uuid
ruby
uuid! :idruby
string! :id, format: :uuidruby
uuid? :idruby
string? :id, format: :uuidmoney
ruby
money! :box_officeruby
integer! :box_office_cents
string! :box_office_currencyruby
money? :box_officeruby
integer? :box_office_cents
string? :box_office_currencyduration
ruby
duration! :episode_durationruby
attribute :episode_duration, from: String, as: ActiveSupport::Duration, format: { from: :duration }ruby
duration? :episode_durationruby
attribute :episode_duration, from: [String, NilClass], as: [ActiveSupport::Duration, NilClass], format: { from: :duration }, required: falsedate
ruby
date! :premiered_onruby
attribute :premiered_on, from: String, as: Date, format: { from: :date }ruby
date? :premiered_onruby
attribute :premiered_on, from: [String, NilClass], as: [Date, NilClass], format: { from: :date }, required: falsetime
ruby
time! :premiered_atruby
attribute :premiered_at, from: String, as: Time, format: { from: :time }ruby
time? :premiered_atruby
attribute :premiered_at, from: [String, NilClass], as: [Time, NilClass], format: { from: :time }, required: falsedatetime
ruby
datetime! :premiered_atruby
attribute :premiered_at, from: String, as: DateTime, format: { from: :datetime }ruby
datetime? :premiered_atruby
attribute :premiered_at, from: [String, NilClass], as: [DateTime, NilClass], format: { from: :datetime }, required: false