0
我正在使用Rails中的Web後端工作。我的Article
模型在很大程度上是一個包裝,它將大多數方法委託給最近的ArticleVersion
。不過,在編寫FactoryGirl工廠時,我試圖創建一個:article_with_version工廠,該工廠生成一個Article
並給它一個版本,但我不知道如何將參數從Article
工廠轉移到ArticleVersion
。如何訪問FactoryGirl中的傳入參數哈希值
下面是相關代碼:
class Article < ActiveRecord::Base
has_many :versions, :class_name => "ArticleVersion"
def title
self.versions.last.title
end # method title
def contents
self.versions.last.contents
end # method contents
end # model Article
FactoryGirl.define do
factory :article_version do; end
factory :article do; end
factory :article_with_version, :parent => :article do
after_create do |article|
article.versions << Factory(:article_version, :article_id => article.id)
end # after_create
end # factory :article_with_version
end # FactoryGirl.define
我想做什麼就能做的是叫Factory(:article_with_version, :title => "The Grid", :contents => "<h1>Greetings, programs!</h1>")
,並有FactoryGirl傳遞這些:標題和:內容參數到新ArticleVersion
(或零,如果這些被省略)。有沒有辦法訪問在Factory.create()期間傳遞的動態參數的散列?