Sha256: 7a22bb55cd8ca7c1550f8fe0ae375858cf22f942228528367b0f2db7b1e8accc

Contents?: true

Size: 1.53 KB

Versions: 32

Compression:

Stored size: 1.53 KB

Contents

# frozen_string_literal: true

module Mobility
  module Backends
=begin

Stores translated attribute as a column on the model table. To use this
backend, ensure that the model table has columns named +<attribute>_<locale>+
for every locale in +Mobility.available_locales+ (i.e. +I18n.available_locales+).

If you are using Rails, you can use the +mobility:translations+ generator to
create a migration adding these columns to the model table with:

  rails generate mobility:translations post title:string

The generated migration will add columns +title_<locale>+ for every locale in
+Mobility.available_locales+. (The generator can be run again to add new attributes
or locales.)

==Backend Options

There are no options for this backend. Also, the +locale_accessors+ option will
be ignored if set, since it would cause a conflict with column accessors.

@see Mobility::Backends::ActiveRecord::Column
@see Mobility::Backends::Sequel::Column

=end
    module Column
      # Returns name of column where translated attribute is stored
      # @param [Symbol] locale
      # @return [String]
      def column(locale = Mobility.locale)
        Column.column_name_for(attribute, locale)
      end

      # Returns name of column where translated attribute is stored
      # @param [String] attribute
      # @param [Symbol] locale
      # @return [String]
      def self.column_name_for(attribute, locale = Mobility.locale)
        normalized_locale = Mobility.normalize_locale(locale)
        "#{attribute}_#{normalized_locale}".to_sym
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
mobility-1.3.2 lib/mobility/backends/column.rb
mobility-1.3.1 lib/mobility/backends/column.rb
mobility-1.3.0 lib/mobility/backends/column.rb
mobility-1.3.0.rc3 lib/mobility/backends/column.rb
mobility-1.3.0.rc2 lib/mobility/backends/column.rb
mobility-1.3.0.rc1 lib/mobility/backends/column.rb
mobility-1.2.9 lib/mobility/backends/column.rb
mobility-1.2.8 lib/mobility/backends/column.rb
mobility-1.2.7 lib/mobility/backends/column.rb
mobility-1.2.6 lib/mobility/backends/column.rb
mobility-1.2.5 lib/mobility/backends/column.rb
mobility-1.2.4 lib/mobility/backends/column.rb
mobility-1.2.3 lib/mobility/backends/column.rb
mobility-1.2.2 lib/mobility/backends/column.rb
mobility-1.2.1 lib/mobility/backends/column.rb
mobility-1.2.0 lib/mobility/backends/column.rb
mobility-1.1.3 lib/mobility/backends/column.rb
mobility-1.1.2 lib/mobility/backends/column.rb
mobility-1.1.1 lib/mobility/backends/column.rb
mobility-1.1.0 lib/mobility/backends/column.rb