种子翻译表没有模型,rails app

时间:2012-04-08 20:25:14

标签: ruby-on-rails seed globalize3

我正在使用Ryan Bates轨道广播中看到的Globalize 3 gem,一切正常。我需要知道如何播种数据。目前,我创建了一个名为monthly_post_translations的表,其中包含以下架构

schema.rb

create_table "monthly_post_translations", :force => true do |t|
  t.integer  "monthly_post_id"
  t.string   "locale"
  t.text     "body"
  t.datetime "created_at"
  t.datetime "updated_at"
end

我需要将种子数据添加到此表中,但它没有与之交互的模型,所以我该怎么做?

这是我的电流seeds.rb无法正常工作

seeds.rb

# Monthly Posts
  MonthlyPost.delete_all

 monthlypost = MonthlyPost.create(:body => "Monthly Post Text")


#Monthly Posts Spanish Translation
monthlytranslation = MonthlyPostTranslation.create(:body => "Spanish Translation of monthly post text",
      :monthly_post_id => monthlypost.id,
      :locale => "es" )

但是month_post_translation表没有我可以与之交互的模型,所以我收到了错误

uninitialized constant MonthlyPostTranslation

有关如何正确添加此种子数据的任何想法?

1 个答案:

答案 0 :(得分:4)

documentation开始,输入translates :<attribute_name_here>即可生成名为MonthlyPost::Translation的模型。所以答案是:使用实例集合来创建或列出实体的所有翻译:

monthlypost = MonthlyPost.create(:body => "Monthly Post Text")


#Monthly Posts Spanish Translation
monthlytranslation = monthlypost.translations.create(:body => "Spanish Translation of monthly post text",
      :locale => "es" )