Skip to content

Instantly share code, notes, and snippets.

@nicolasblanco
Last active December 17, 2015 08:49
Show Gist options
  • Select an option

  • Save nicolasblanco/5582734 to your computer and use it in GitHub Desktop.

Select an option

Save nicolasblanco/5582734 to your computer and use it in GitHub Desktop.
Virtus.coercer do |config|
config.string.boolean_map = { 'true' => true, 'false' => false }
end
class BookingWizard
include Virtus
extend ActiveModel::Naming
include ActiveModel::Conversion
include ActiveModel::Validations
attribute :know_doctor, Boolean, default: false
end
1.9.3 (main):0 > b = BookingWizard.new
=> #<BookingWizard:0x007fea748bf338
@know_doctor=false>
1.9.3 (main):0 > b.know_doctor = "true"
=> "true"
1.9.3 (main):0 > b.know_doctor
=> "true"
1.9.3 (main):0 > b.know_doctor.class
=> String
1.9.3 (main):0 > Virtus.coercer[String].to_boolean("true")
=> true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment