instance method
underscore
Ruby on Rails 3.0.20
Since v2.2.3Signature
underscore(camel_cased_word)
Makes an underscored, lowercase form from the expression in the string.
Changes ‘::’ to ‘/’ to convert namespaces to paths.
Examples:
"ActiveRecord".underscore # => "active_record" "ActiveRecord::Errors".underscore # => active_record/errors
As a rule of thumb you can think of underscore as the inverse of camelize, though there are cases where that does not hold:
"SSLError".underscore.camelize # => "SslError"
Parameters
-
camel_cased_wordreq
Source
# File activesupport/lib/active_support/inflector/methods.rb, line 48
def underscore(camel_cased_word)
word = camel_cased_word.to_s.dup
word.gsub!(/::/, '/')
word.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2')
word.gsub!(/([a-z\d])([A-Z])/,'\1_\2')
word.tr!("-", "_")
word.downcase!
word
end
Defined in activesupport/lib/active_support/inflector/methods.rb line 48
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Inflector