ruby on rails - migrations - Rieles: ¿cómo enumerar las tablas/objetos de la base de datos utilizando la consola de Rails?
ruby on rails run migrations (5)
Es un comienzo, puede enumerar:
models = Dir.new("#{RAILS_ROOT}/app/models").entries
Mirando un poco más ...
Me preguntaba si podría enumerar / examinar qué bases de datos / objetos están disponibles para usted en la consola de Rails. Sé que puedes verlos usando otras herramientas, solo tengo curiosidad. Gracias.
Espero que mi respuesta tardía pueda ser de alguna ayuda.
Esto irá a la consola de la base de datos de rieles.
rails db
bastante imprimir su salida de consulta
.headers on
.mode columns
(turn headers on and show database data in column mode )
Mostrar las tablas
.table
''.help'' para ver ayuda.
O use declaraciones SQL como ''Seleccionar * de autos''
Para obtener una lista de todas las clases de modelo, puede usar ActiveRecord::Base.subclasses
por ejemplo
ActiveRecord::Base.subclasses.map { |cl| cl.name }
ActiveRecord::Base.subclasses.find { |cl| cl.name == "Foo" }
Probablemente estás buscando:
ActiveRecord::Base.connection.tables
y
ActiveRecord::Base.connection.table_structure("projects")
Probablemente deberías envolverlos en una sintaxis más corta dentro de tu .irbrc
.
Puede usar los rails dbconsole
para ver la base de datos que su aplicación de rieles está usando. Es rails db
respuesta alternativos rails db
. Ambos comandos le dirigirán la interfaz de línea de comando y le permitirán usar esa sintaxis de consulta de la base de datos.