instance method
human
Ruby on Rails 4.1.16
Since v3.0.20Signature
human(options={})
Transform the model name into a more humane format, using I18n. By default, it will underscore then humanize the class name.
class BlogPost extend ActiveModel::Naming end BlogPost.model_name.human # => "Blog post"
Specify options with additional translating options.
Parameters
-
optionsopt = {}
Source
# File activemodel/lib/active_model/naming.rb, line 175
def human(options={})
return @human unless @klass.respond_to?(:lookup_ancestors) &&
@klass.respond_to?(:i18n_scope)
defaults = @klass.lookup_ancestors.map do |klass|
klass.model_name.i18n_key
end
defaults << options[:default] if options[:default]
defaults << @human
options = { scope: [@klass.i18n_scope, :models], count: 1, default: defaults }.merge!(options.except(:default))
I18n.translate(defaults.shift, options)
end
Defined in activemodel/lib/active_model/naming.rb line 175
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveModel::Name