2010-05-06 28 views
1

的選項,你能告訴我 - 如何使用方法create_translation_table! globalize2的其他選項,例如:null => false,:default =>「abc」???像下面globalize2 - create_translation_table!和列

Post.create_translation_table! :title => :string, :text => :text, {:null=>false, :default=>"abc"} 

回答

0

嘗試一些是globalize2當前版本的方法定義:

def create_translation_table!(fields) 
    translated_attribute_names.each do |f| 
     raise MigrationMissingTranslatedField, "Missing translated field #{f}" unless fields[f] 
    end 

    fields.each do |name, type| 
     if translated_attribute_names.include?(name) && ![:string, :text].include?(type) 
     raise BadMigrationFieldType, "Bad field type for #{name}, should be :string or :text" 
     end 
    end 

    self.connection.create_table(translation_table_name) do |t| 
     t.references table_name.sub(/^#{table_name_prefix}/, "").singularize 
     t.string :locale 
     fields.each do |name, type| 
     t.column name, type 
     end 
     t.timestamps 
    end 

    self.connection.add_index(
     translation_table_name, 
     "#{table_name.sub(/^#{table_name_prefix}/, "").singularize}_id", 
     :name => translation_index_name 
    ) 
    end 

正如你所看到的,有傳遞給t.column聲明沒有第三個參數。因此,沒有補丁,globalize2將不會支持這一點。

我的建議只是手動創建遷移。