Module: Trasto::Translates

Defined in:
lib/trasto/translates.rb

Instance Method Summary collapse

Instance Method Details

#translates(*columns) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/trasto/translates.rb', line 3

def translates(*columns)
  extend Trasto::ClassMethods
  include Trasto::InstanceMethods

  # Don't overwrite values if running multiple times in the same class
  # or in different classes of an inheritance chain.
  unless respond_to?(:translatable_columns)
    class_attribute :translatable_columns
    self.translatable_columns = []
  end

  self.translatable_columns |= columns.map(&:to_sym)

  columns.each { |column| define_localized_attribute(column) }
end