Ich bin gerade in Factory Girl und ich bin in eine Schwierigkeit geraten, die sicher viel einfacher sein sollte. Ich konnte die Dokumentation einfach nicht in ein funktionierendes Beispiel umwandeln.Factory Girl: Eltern Objekte automatisch zuweisen
Angenommen ich folgende Modelle haben:
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
Was will ich, dies zu tun ist:
team = Factory.build(:team_with_players)
und haben es ein paar Spieler für mich aufzubauen. Ich versuchte dies:
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
Aber das scheitert auf dem :team=>t
Abschnitt, weil t
nicht wirklich ein Team
ist, es ist ein Factory::Proxy::Builder
. I haben, um einem Spieler ein Team zugewiesen zu haben.
In einigen Fällen möchte ich eine League
aufbauen und es eine ähnliche Sache machen lassen, mehrere Teams mit mehreren Spielern zu schaffen.
Was fehlt mir?
Ich lief in dieser genau das gleiche Problem (gleiche Fehler) und schaute sich um und haben keine Lösung gefunden. –