0

我正在使用 rails-3.2.2、i18n-0.6.0 和 globalize3-0.2.0 ruby​​-gems。我为我的一个名为Article. 但是,当我rake db:seed在终端窗口中运行任务时,出现以下错误:

$ rake db:seed
rake aborted!
Mysql2::Error: Unknown database 'article_translations': SHOW TABLES IN article_translations LIKE 'title'

在我的<ROOT_APP>/config/seed.rb文件中,我有:

Article.find_or_create_by_title(
  :title => 'Title example',
  ...
)

在我的<ROOT_APP>/app/models/article.rb文件中,我有:

class Article < ActiveRecord::Base
  translates :title, :fallbacks_for_empty_translations => true

  ...
end

我该如何解决这个错误?

更多详情,请访问https://github.com/svenfuchs/globalize3/pull/123


注意:我认为问题与中find_or_create_by_title调用的方法有关<ROOT_APP>/config/seed.rb(实际上,如果我使用该find方法而不是find_or_create_by_title我没有得到上面解释的 rake 错误)。如果这是真的,我可以做些什么来保持我的seed.rb文件清晰,因为我需要一些技巧(例如,如下所示)来解决问题?

# The below code has the same effect as the 'find_or_create_by_title' method.
Article.create(:title, 'Title example updated!') unless Article.exists?(:title => 'Title example')
4

1 回答 1

1

您可能无法先运行 rake db:create / rake db:migrate

于 2012-04-08T00:29:55.220 回答