instance method human

Ruby on Rails 7.1.6

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 human 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 197
    def human(options = {})
      return @human if i18n_keys.empty? || i18n_scope.empty?

      key, *defaults = i18n_keys
      defaults << options[:default] if options[:default]
      defaults << MISSING_TRANSLATION

      translation = I18n.translate(key, scope: i18n_scope, count: 1, **options, default: defaults)
      translation = @human if translation == MISSING_TRANSLATION
      translation
    end

Defined in activemodel/lib/active_model/naming.rb line 197 · 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