Sto appena entrando in Factory Girl e sto incontrando una difficoltà che sono sicuro dovrebbe essere molto più semplice. Non sono riuscito a trasformare la documentazione in un esempio funzionante.Factory Girl: Assegnazione automatica di oggetti padre
Si supponga che ho i seguenti modelli:
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
Quello che voglio fare è questo:
team = Factory.build(:team_with_players)
e lo hanno costruire un gruppo di giocatori per me. Ho provato questo:
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
Ma questo non riesce nella sezione :team=>t
, perché t
non è davvero un Team
, è un Factory::Proxy::Builder
. I hanno per assegnare una squadra a un giocatore.
In alcuni casi, desidero creare un League
e farlo fare una cosa simile, creando più team con più giocatori.
Cosa mi manca?
Ho appena incontrato questo problema esattamente lo stesso (lo stesso errore) e si guardò intorno e non hanno trovato una soluzione. –