rails-3.2.2、i18n-0.6.0、globalize3-0.2.0 ruby-gems を使用しています。という名前のクラスに Globalizedをインストール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
上記で説明したレーキ エラーは発生しません)。それが本当なら、問題を解決するにはハック(たとえば、以下に示すような)が必要になるため、ファイルをクリアに保つために何ができますか?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')