Sha256: 554796308fa5305d3b6811c624f7d5ac27b4cfef11a5a4fd8f31b2c3186995bc
Contents?: true
Size: 763 Bytes
Versions: 8
Compression:
Stored size: 763 Bytes
Contents
module Lolita class ModelName def initialize(given_class) @klass = given_class @class_name = @klass.to_s end def human(options={}) name = if defined?(ActiveRecord::Base) && @klass.ancestors.include?(ActiveRecord::Base) "activerecord.models.#{@class_name.underscore}" else "lolita.models.#{@class_name.underscore.gsub("/",".")}" end ::I18n.t("#{name}.#{prefix(options)}") end private def prefix options if options[:count] if options[:count] == 1 "one" else "other" end else "one" end end end end Object.class_eval do def lolita_model_name @lolita_model_name ||= Lolita::ModelName.new(self) end end
Version data entries
8 entries across 8 versions & 1 rubygems