estoy poniendo en práctica Factory Girl como un reemplazo para los accesorios en mi aplicación Rails. Tengo varias tablas que intento representar usando asociaciones. Sin embargo, para lanzar una torcedura en el bucle, más allá de la definición de las asociaciones, también necesito para acceder a los atributos de las fábricas niño de los padres.infantil Acceso a los atributos de la fábrica matriz fábricas de chicas
A continuación se muestra un ejemplo de lo que estoy tratando de hacer:
- fábrica: foo_bar se asocia a la fábrica: foo, que se asocia a la fábrica: barra de
- Desde: foo_bar, estoy tratando de atributos de acceso de ambos: foo y: barra de
Aquí están las muestras:
Factory.define :bar do |e|
e.name "Bar"
end
Factory.define :foo do |e|
e.bar {|b| b.association(:bar)}
end
Factory.define :foo_bar do |b|
f = b.association(:foo)
b.foo_id foo.id
b.bar_id foo.bar_id
end
He pasado por una serie de tutoriales y otras preguntas y no he visto ejemplos de cómo hacer esto. ¿Alguna idea u otras formas de obtener el mismo resultado?
Gracias!
EDITAR
Sobre la base de un par de las preguntas, he aquí algunas aclaraciones que debería haber incluido originalmente ...
: foo_bar no es una tabla de unión, sino un modelo con otros atributos propios.
Esto es lo que estoy realmente tratando de lograr:
- tienen: foo_bar crear una fábrica asociada
- entonces tienen que fábrica asociada a crear se asocia fábrica
- (este es el elemento I' m luchando con) tiene: foo_bar acceder a un atributo de la fábrica de nivel inferior
lo tanto, si: foo_bar> foo>: bar, entonces a partir de: foo_bar, estoy tratando de conseguir en: Identificación del bar.
No estoy muy claro en lo que: foo_bar es. ¿Es solo una tabla de unión o tiene otras propiedades que no están en la lista? –
Hola, gracias por el comentario. Sí, puedo ver cómo es confuso de la versión simplificada. : foo_bar tiene otros atributos que simplemente no se muestran. No es una tabla de unión. – shedd
Este es el hilo que he estado mirando, FYI: http://groups.google.com/group/factory_girl/browse_thread/thread/2ffdd38eb31b0727?pli=1 – shedd