Usine usine imbriquée

J'ai un compte modèle belongs_to un modèle de rôle.

factory :role do
  name "student"
end

factory :account do
  user
  role
end

La première usine crée un rôle nommé "étudiant". Le deuxième usine crée un compte qui est associé à l'étudiant le rôle qui a été créé dans le précédent usine. Il est également associé à un utilisateur...ce qui n'est pas important pour cette question.

J'ai beaucoup de rôles à être testé (administrateur, étudiant, assistant)... je ne veux pas spécifier "étudiant" dans le rôle de l'usine...c'est trop statique. Comment puis-je spécifier quel rôle pour créer à la fois le compte de l'usine est créée? Comme:

  factory :account do
    user
    role_id { factory :role { name: "admin"} }
  end

Quelle est la meilleure façon d'accomplir cette?

source d'informationauteur hellion | 2012-12-30