Фабричная девушка имеет много отношений (и защищенный атрибут)

У меня такое отношение:

class Article < ActiveRecord::Base
  has_many :comments
end

class Comment < ActiveRecord::Base
  belongs_to :article
  attr_protected :article_id
end

Сценарий по умолчанию внутри контроллеров выглядит так:

@article = Article.create(:title => "foobar")
@comment = @article.comments.create(:content => "w00t")

Я пытался написать эти фабрики:

Factory.define :article do |f|
  f.title "Hello, world"
end

Factory.define :comment do |f|
  f.content "Awesome!"
  f.association :article
end

Но мой синтаксис неверен в отношении ассоциации. Это немного сложно из-за защищенного атрибута article_id комментария. Поэтому я думаю, что будет лучше, если я объявлю ассоциацию внутри фабрики статей, но я не вижу, как ее обрабатывать.

Спасибо за любую помощь.


person Puru puru rin..    schedule 03.09.2010    source источник


Ответы (1)


Ты должен сделать

Factory.define :comment do |f|
  f.content "Awesome!"
  f.article { |a| a.association(:article) }
end
person mb14    schedule 03.09.2010
comment
Большое спасибо, mb14. Удачных разработок RoR3! :) - person Puru puru rin..; 06.09.2010