Cómo agregar una columna a una tabla usando ActiveRecord a través del terminal. Estoy intentando usar el método add_column, pero no funciona. Alguna idea, por favor?Agregar una columna a través del terminal
Respuesta
Es mejor escribir una migración y una obligación si está trabajando con un equipo. Cuando realiza cambios de db, también se debe actualizar el entorno de cada desarrollador. De lo contrario, tendrás algunos desarrolladores enojados contigo.
rails generate migration AddPartNumberToProducts part_number:string
generará
class AddPartNumberToProducts < ActiveRecord::Migration
def change
add_column :products, :part_number, :string
end
end
entonces se corre la migración
rake db:migrate
http://guides.rubyonrails.org/migrations.html
Editar:
Por toda respuesta, una consola de rieles de línea de comandos de verificación de @ Tadman o utilizar las Bengala propuso como
ActiveRecord::Migration.add_column :products, :part_number, :string
Si solo está pirateando, generalmente es más fácil manipular la base de datos utilizando un cliente SQLite de algún tipo que a través de la capa Rails DB.
Si está haciendo esto para un proyecto, cree un archivo de migración adecuado y ejecútelo.
Si está decidido a hacerlo, el método add_column
está disponible a través del objeto del controlador ActiveRecord::Base.connection
.
Puede ejecutar migraciones directamente en los carriles de la consola rails c
con ActiveRecord::Migration
para su propósito que el siguiente comando hará lo que usted pregunte:
> ActiveRecord::Migration.add_column :table_name, :field_name, :field_type
Gracias por esto. Por supuesto, es mejor escribir una migración casi todo el tiempo. Pero a veces, sabes exactamente lo que estás haciendo y solo quieres ejecutar un cambio directamente :) – FeifanZ
Sí, pero no preguntó cómo hacer una migración, preguntó cómo agregar una columna a través de la terminal. Y creo que esta es la respuesta adecuada. – Bengala
- 1. Detener una aplicación a través del terminal
- 2. DataReader.GetString() a través del nombre de columna
- 3. Cómo agregar una columna adicional a Fiddler
- 4. Agregar una identidad a una columna existente
- 5. ¿Cómo agregar AUTO_INCREMENT a una columna existente?
- 6. Agregar una clase de CSS a una columna
- 7. Agregar elementos a un objeto a través del método .push()
- 8. agregar columna a SQLAlchemy Tabla
- 9. Conéctese a mysql remoto a través de la terminal
- 10. QListVer cómo agregar una columna?
- 11. cómo agregar una nueva columna a una hoja existente
- 12. ¿Cómo puedo agregar una columna a una tabla existente?
- 13. Rieles Agregar Rol rol a través del formulario de usuario
- 14. Agregar cuenta a través del administrador de cuentas
- 15. C# Agregar aplicación en el inicio a través del programa
- 16. ¿Cómo agregar valores del mismo artículo en una columna?
- 17. Cómo agregar portlets anidados (liferay) a través del código
- 18. Slickgrid agregar color a una celda/columna o fila
- 19. Cargar carpeta a través de la Terminal de Mac
- 20. Ejecutar aplicaciones Java GUI a través de un terminal Linux
- 21. soporte de ratón Emacs a través de ssh terminal de
- 22. en bucle a través de una columna en R
- 23. Agregar un observable calculado a través del prototipo a una función de constructor
- 24. cómo ejecutar en un terminal de Ubuntu a través
- 25. Recarga Apache2 a través de Terminal en MAC OS X
- 26. Agregar una columna entera a una tabla mysql existente basada en la columna existente
- 27. ¿Cómo puedo agregar una columna a una base de datos Postgresql que no permita valores nulos?
- 28. ¿Cómo puedo agregar una columna a este resultado de unión?
- 29. "Agregar un valor a una columna 'datetime' causó un desbordamiento."
- 30. SQL Server 2008 R2 Agregar columna a una ubicación específica
¿Qué base de datos está utilizando? – cdesrosiers
Es mejor escribir una migración –
Estoy usando el valor predeterminado de rail, que si no me equivoco, es SQLite ... Sin embargo, no debería importar ya que estoy abstrayendo el código SQL usando ActiveRecord. Genere un modelo de Cuenta y olvidé insertar un nombre de campo de correo electrónico y deseo agregarlo ... – Sweebo