播种时无法创作

时间:2015-12-29 10:11:29

标签: ruby-on-rails ruby ruby-on-rails-4 associations seed

Article has_one Title。播种新标题后,我收到错误(参考下面我种子代码的第4行):

NoMethodError: undefined method `create!' for nil:NilClass

导致此错误的原因是什么?似乎说diagram是零,但这怎么可能?

种子:

articles = Article.all
articles.each do |article|
  content = Faker::Lorem.paragraphs(2)
  article.title.create!( content: content )
end

文章模型:

has_one :title, dependent: :destroy

标题模型:

belongs_to :article

1 个答案:

答案 0 :(得分:4)

错误消息显示article.title为零,这是正确的,因为这是您想要创建的内容。

您应该使用关联为您提供的方法 - 在这种情况下您需要:

article.create_title!(content: content)

参考:http://guides.rubyonrails.org/association_basics.html#has-one-association-reference