Software

Models, migrate y schema desde base de datos para Rails

Como inicie un  proyecto por la base de datos, debía en Rails poder hacer «ingeniería inversa» desde la base de datos para generar los modelos, la migración inicial como su respectivo esquema.

Para lo anterior utilice para generar el schema.rb el comando

rake db:schema:dump

Lo anterior debe hacerse luego de configurado el config/database.yml

Ya con el schema (config/schema.rb) hice el primer archivo para la migración. Este lo creo en db/migrate/001_create_database.rb con el siguiente contenido

class CreateDatabase < ActiveRecord::Migration
  def up

   #Contenido del schema.rb
  end

end

La idea anterior la tome desde https://www.ruby-forum.com/topic/124328#553469

Ya con esto debo generar los modelos, para esto use rmre dichos modelos los copio en app/models

Nota: Si llegaste hasta aqui puede que interesen los temas que escribo. Puedes seguirme en Twitter o suscribirte a los nuevos artículos

4 thoughts on “Models, migrate y schema desde base de datos para Rails”

  1. Hola,

    Sabes estoy realizado esto y tengo la Base de datos en un hosting en AWS y no comprendo como realizar la ingeniería inversa de este modo, me puedes ayudar.

    Saludos,

    Ruben.

      1. Hola, muchas gracias por contestar.

        Te cuento.. yo tengo un modelo de base de datos ya construido, este esta en mysql alojado en un hosting en AWS, ahora desde la aplicacion de ruby logre realizar la conexion y se creo perfectamente el schema con las tablas que posee esta base de datos, pero necesito generar los modelos realizando la ingenieria inversa, utilice rmre pero me genera un error como si el nombre de la base de datos estubiera equivocado.
        Ahora bien esta clase «class CreateDatabase < ActiveRecord::Migration" no entiendo bien su funcionamiento seria idea lo pudieras explicar.

        Seria factible explicaras realizar la Ingenieria inversa un tanto mas detallada desde una base de datos externa.

        Agradesco mucho tu tiempo.

  2. Lo que debes hacer es agregar el contenido del esquema (schema.rb) dentro del archivo que usaras para la migración.

    El archivo que contiendo «class CreateDatabase < ActiveRecord::Migration" es un archivo de migración. Con rmre puedes hacer la construcción de los modelos mediante tu base de datos. El archivo de migración es distinto a tus modelos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.