instance method human

Ruby on Rails 4.0.13

Since v3.0.20

Available in: v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

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

options opt = {}
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

Type at least 2 characters to search.

↑↓ navigate · open · esc close