lib/lolita-translation/has_translations.rb in lolita-translation-0.2.6 vs lib/lolita-translation/has_translations.rb in lolita-translation-0.2.7

- old
+ new

@@ -86,15 +86,15 @@ :fallback => true, :reader => true, :writer => false, :nil => '' }.merge(attrs.extract_options!) - options.assert_valid_keys([:fallback, :reader, :writer, :nil]) + options.assert_valid_keys([:fallback, :reader, :writer, :nil,:table_name]) self.extend(Lolita::Translation::ClassMethods) self.class_eval do translation_class_name = "#{self.name}Translation" - translation_class = self.define_translation_class(translation_class_name, attrs) + translation_class = self.define_translation_class(translation_class_name, attrs,options) belongs_to = self.name.demodulize.underscore.to_sym write_inheritable_attribute :has_translations_options, options class_inheritable_reader :has_translations_options @@ -192,20 +192,20 @@ create_class(other.join('::'), parent, superclass, &block) end end # defines "ModelNameTranslation" if it's not defined manualy - def define_translation_class name, attrs + def define_translation_class name, attrs, options = {} klass = name.constantize rescue nil adapter = Lolita::DBI::Base.create(self) unless klass klass = create_class(name, Object, get_orm_class(adapter)) do if adapter.dbi.adapter_name == :mongoid include Mongoid::Document end # set's real table name translation_adapter = Lolita::DBI::Base.create(self) - translation_adapter.collection_name = adapter.collection_name.to_s.singularize + "_translation" + translation_adapter.collection_name = options[:table_name] || adapter.collection_name.to_s.singularize + "_translation" cattr_accessor :translate_attrs, :master_id # before friendly_id 4.x if adapter.klass.respond_to?(:uses_friendly_id?) && adapter.klass.send(:uses_friendly_id?)