我正在了解Factory Girl,但遇到了一个似乎应该很容易解决的问题。我无法将文档转化为工作示例。
假设我有以下模型:
我想做的是这件事:
并让它为我积累一堆玩家。我尝试过这个:
但在
假设我有以下模型:
class League < ActiveRecord::Base
has_many :teams
end
class Team < ActiveRecord::Base
belongs_to :league
has_many :players
end
class Player < ActiveRecord::Base
belongs_to :team
end
我想做的是这件事:
team = Factory.build(:team_with_players)
并让它为我积累一堆玩家。我尝试过这个:
Factory.define :team_with_players, :class => :team do |t|
t.sequence {|n| "team-#{n}" }
t.players {|p|
25.times {Factory.build(:player, :team => t)}
}
end
但在
:team=>t
部分中失败,因为t
并不是真正的Team
,它是一个Factory :: Proxy :: Builder
。我必须给球员分配一个团队。
在某些情况下,我想建立一个League
,让它做类似的事情,创建多个有多个球员的团队。
我错过了什么?