Instantly share code, notes, and snippets.

Embed
What would you like to do?
Ruby string to boolean type casting
class String
def to_bool
case
when self == true || self =~ /^(true|t|yes|y|1)$/i
true
when self == false || self.blank? || self =~ /^(false|f|no|n|0)$/i
false
else
raise ArgumentError.new "invalid value for Boolean: '#{self}'"
end
end
alias :to_b :to_bool
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment