¿Hay alguna forma de generar un modelo de Rails con una relación de muchos a muchos predefinida? Sé cómo agregarlo al registro activo después del hecho, pero sería bueno tenerlo definido en la migración de base de datos y el modelo de registro activo desde el primer momento.Generando un modelo con muchos a muchos en Ruby on Rails
Respuesta
Mire primero esta pregunta: Creating a many-to-many relationship in Rails 3.
Además, recomendaría el siguiente libro "Ruby on Rails 3 Tutorial: Learn Rails by Example" para una mejor comprensión de las relaciones ActiveRecord
.
Puede utilizar esta referencia de las Guías de rieles. Here is the link. También necesitará crear manualmente la tabla de unión para esos modelos que usan una migración.
por ejemplo
create_table :assemblies_parts, :force => true do |t|
t.integer :assembly_id
t.integer :part_id
end
Gracias por la respuesta, he leído esa guía. Como mencioné a otro respondedor, me preguntaba si el script de generar modelo podría manejarlo en un solo paso, y parece que no puede, así que está bien ... sin embargo, hubiera sido bueno. ; p – Kevin
sí, no creo que se pueda hacer automáticamente. Si descubro un atajo, lo publicaré aquí :). – Shiv
Recuerde que usted no desea un ID para la tabla de unión, así que asegúrese de añadir: id => false | t |
create_table assemblies_parts, :id => false do |t|
t.integer :assembly_id
t.integer :part_id
end
Si utiliza los carriles
rails generate model Assemblies_parts assembly:references part:references
tendrá dos índices, pero lo que quiere es
# Add table index
add_index :assemblies_parts, [:assembly_id, :part_id], :unique => true
ACTUALIZACIÓN
- para los carriles 5 uso
create_join_table
instead.
http://jonathanhui.com/ruby-rails-3-model-many-many-association –
- 1. cómo consultar muchos a muchos?
- 2. Validar la unicidad de muchos a muchos asociación en Rails
- 3. Acceso a current_user desde un modelo en Ruby on Rails
- 4. Ruby on Rails - generando estilo bit.ly UUID
- 5. muchos-a-muchos y muchos-a-muchos intersecciones
- 6. relación muchos-a-muchos SQLite?
- 7. Relación Muchos a Muchos
- 8. Rails pertenece a muchos modelos
- 9. JPA muchos a muchos con columna adicional
- 10. Django contar con muchos-a-muchos
- 11. Relaciones muchos a muchos con ServiceStack.OrmLite
- 12. Muchos a muchos tabla unirse a Pivote
- 13. carriles de muchos a muchos auto unen
- 14. Entity Framework Muchos a muchos CRUD
- 15. Relación de muchos a muchos
- 16. Fluido NHibernate Autorreferenciado a muchos a muchos
- 17. Cómo personalizar un modelo en línea de muchos a muchos en django admin
- 18. Diseñando sitios web con Ruby on Rails
- 19. Django: accediendo a muchos a muchos objetos a través de otra relación Muchos a Muchos
- 20. muchos a muchos seleccione consulta
- 21. SQL: relación muchos a muchos, condición IN
- 22. Relaciones Muchos a Muchos en MySQL
- 23. Django Muchos a muchos Insertar pedidos
- 24. Modelo de rieles, pertenece a muchos
- 25. relaciones muchos a muchos en JSON
- 26. ¿Es posible anotar solo un modelo en Ruby on Rails?
- 27. Ruby on Rails Plural Nombre del modelo
- 28. SQL muchos a muchos seleccione
- 29. Atributos en relaciones Muchos a Muchos (Hibernar)
- 30. Diferencia entre uno-a-muchos, muchos-a-uno y muchos-a-muchos?
Gracias por la respuesta, he leído la guía a la que se vinculan los enlaces. Me preguntaba si el script de generar modelo podría manejarlo en un solo paso, parece que no. – Kevin