Soy nuevo en los rieles, y estoy tratando de establecer una relación de muchos a muchos en mi proyecto de rieles. Tengo una pequeña estrategia, pero no estoy seguro si es la correcta.Cómo tener una relación de varios a varios en los carriles
Objetivo: Tengo una tabla de usuarios y una tabla de grupos. Los usuarios pueden formar parte de muchos grupos y cada grupo puede tener muchos usuarios.
Estrategia:
- Configurar la migración de usuarios a tener nombre: cadena
- Configurar la migración de grupo para tener el nombre: cadena
- Configurar una migración tabla de unión
- Configurar usuario modelo tal que tendría has_and_belongs_to_many: groups
- Configure el modelo de grupo de forma que tenga has_and_belongs_to_many: users
¿Esta sería la estrategia correcta? ¡Gracias!
Railcast Resumen de la respuesta: Para aquellos que estén interesados - Railcast sugiere que utilice una has_many: a través de la asociación ya que la estrategia anterior tiene la limitación de que no se puede añadir información extra-relación específica.
la salida: http://kconrails.com/tag/has_many/
¿por qué tenemos: dependiente =>: destruir para agrupaciones? – Karan
porque el usuario ya no estará en el grupo si elimina el usuario o el grupo. – tmaximini
¿Por qué no utilizar la relación ['has_and_belongs_to_many'] (http://guides.rubyonrails.org/association_basics.html#the-has-and-belongs-to-many-association)? Simplificaría todo el proceso si no se requieren campos adicionales en la tabla intermedia. – ferdynator