¿Cómo se modifica un modelo que se generó mediante modelado? Por ejemplo, el modelo myModel tenía originalmente las columnas a, byc, pero ahora quiero agregar la columna d.Rieles: modificación de un modelo generado por andamios
Respuesta
Carriles 3 y por encima de utilizar el siguiente código:
rails generate migration add_fieldname_id_to_tablename fieldname:string
Carriles 2
ruby script/generate migration add_fieldname_to_tablename fieldname:string
Esto ya no funciona y devuelve el siguiente error en Rails 3:
ruby: No existe tal archivo o directorio - script/generate (LoadError)
La mejor respuesta que he encontrado hasta ahora es ejecutar este proyecto desde su raíz:
ruby script/generate migration add_d_column_to_myModel
luego editar el nuevo archivo de migración situado en db/migración a ser algo como:
def self.up
add_column :myModel, :d, :string
end
def self.down
remove_column :myModel, :d
end
El último paso será actualizar sus puntos de vista en consecuencia.
respuesta encontró here
funciones de tabla encontraron here
Confundido: ¿por qué hizo la pregunta si tenía una buena respuesta? ¿Por qué no publicar esto en la pregunta original y pedir mejores soluciones? – zenazn
Creo que respondió su propia pregunta. Sin embargo, una cosa que diré es que en algunos casos puede editar la migración del modelo directamente. Las migraciones son geniales cuando tiene un sitio en producción, pero para el desarrollo continuo, a menudo puede darse el lujo de volar la base de datos y comenzar de nuevo. –
Respondí mi propia pregunta por 2 razones. Primero, esta fue la mejor respuesta que encontré, pero soy nuevo en Rails y pensé que podría haber una mejor manera de no encontrarla. Segundo, la Pregunta no había sido publicada en StackOverflow, así que decidí agregarla. –
ruby script/generate migration add_fieldname_to_tablename fieldname:string
este es el método de acceso directo para hacer exactamente lo que quiere. si necesita más control, o si tiene muchas columnas para agregar, la respuesta de Andrew H también funcionará bien.
¿Esto actualizará las vistas también? – femi
No, no actualizará las vistas. – cynicalman
Esta solía ser la respuesta aceptada pero la cambié debido a la nota en la respuesta de NeoNMD sobre esta respuesta. –
- 1. rieles 3 andamios del modelo relacional
- 2. Modificación de un objeto Graphics3D generado por ParametricPlot3D
- 3. ¿Andamios de rieles sin el archivo css?
- 4. ¿Cambiar la forma plural del modelo generado en los rieles?
- 5. Andamios en pilones
- 6. La pluralización de andamios de rieles es incorrecta para "cafe"
- 7. Cómo anular inherited_resources con el comando de andamios de rieles
- 8. Anular generador de andamios predeterminado en rieles 3
- 9. Modelo de rieles "before_filter"?
- 10. Métodos dinámicos en un modelo de rieles
- 11. si no usa andamios, ¿el rubí sobre rieles sigue siendo bueno para un desarrollo rápido?
- 12. Extracción de un modelo en rieles (reverso de "rieles g Título del modelo ...")
- 13. Rieles: ¿Cuándo un modelo? Cuando una lib?
- 14. rails 3.1: ¿cómo anular inherited_resources y permitir que los andamios de rieles funcionen normalmente de nuevo?
- 15. ¿Implementando un tiempo de modificación de tabla por modelo en Django?
- 16. rollback generado controlador/modelo en RoR
- 17. rieles pasar parámetro adicional a un modelo
- 18. rieles modelo has_many, belongs_to relaciones
- 19. Andamios GWT
- 20. Extraiga el sql generado para crear/guardar un modelo ActiveRecord
- 21. Rieles: Obtener una matriz de valores de un modelo por un período de tiempo
- 22. Validación en rieles sin modelo
- 23. El modelo de rieles pertenece a uno u otro modelo
- 24. Estructura de modelo de rieles para usuarios
- 25. rilspec de rieles: ¿cómo verificar la constante de un modelo?
- 26. Leyendo un archivo generado por Cobol
- 27. Cómo guardar un svg generado por raphael
- 28. Vim autocompletar Rieles métodos modelo
- 29. Rieles: método de llamada dentro del modelo
- 30. Rieles: Cargue solo un atributo, no un modelo completo
Gracias, sería bueno eliminar la combinación que no funciona, sin embargo, confunde un poco ... O se puede hacer algún tipo de encabezados (Rails <= 2, Rails > = 3, por ejemplo). – Wiseman
Gracias Wiseman, solo editado para tomar eso en cuenta, ¿es eso mejor? – BookOfGreg
Sí, perfecto, gracias :) – Wiseman