如何指定翻译 table 名称。全球化

How to specify translation table name. Globalize

我的应用程序中有类别模型的翻译 table。

我必须使用 Globalize gem 为模型 Article::Category 创建一个额外的 table。

类别迁移包含以下可逆创建:

reversible do |dir|
  dir.up do
    Category.create_translation_table! name: :string,
                                       description: :text
  end

  dir.down do
    Category.drop_translation_table!
  end
end

Article::Category迁移已经差不多了

reversible do |dir|
  dir.up do
    Article::Category.create_translation_table! title: :string
  end

  dir.down do
    Article::Category.drop_translation_table!
  end
end

当我尝试 db:migrate 时出现错误:PG::DuplicateTable: ERROR: relation "category_translations" already exists

如何在迁移中指定模块时指定 table 名称 (Article::Category.create_translion_table!)

globalize gem 中没有指定 table 名称的方法或选项。我希望在不覆盖 Article::Category class 名称的情况下执行此操作。

通过添加解决

def self.table_name_prefix
  'article_'
end

在文章模块声明中

module Article
  def self.table_name_prefix
    'article_'
  end
end