una tipos sirve relacional rails que para informatica ejemplos datos conexion conectar con ruby ruby-on-rails-3 activemodel

ruby - tipos - Carriles 3: cómo generar modelos para tablas de bases de datos existentes



que es una base de datos relacional (6)

ActiveRecord no analiza una definición de esquema. Le pide al DBM las definiciones de tabla y calcula los campos sobre la marcha.

Tener el esquema es útil si va a modificar las tablas mediante migraciones. Schema Dumping and You lo ayudarán a volcarlo para utilizarlo como referencia para crear migraciones.

ActiveRecord hace algunas suposiciones sobre la denominación de la tabla y espera que un campo de id sea ​​la clave principal con un número secuencial como tipo. Tener las migraciones lo ayudaría a refactorizar las tablas y / o nombres de campo y tipos, pero puede hacer esas mismas cosas a través de la línea de comandos de su DBM. En realidad, no es necesario seguir el estilo de ActiveRecord, pero esto ayuda a evitar errores extraños y permite que AR infiera cosas para facilitarle la vida.

He configurado mi database.yml para que apunte a mi base de datos mysql existente

¿cómo puedo generar modelos a partir de eso?

rails generate model existing_table_name

solo da un modelo emty ..



Un modelo de Rails no muestra tus campos, pero aún puedes usarlos. Prueba lo siguiente. Suponiendo que tiene un modelo llamado ModelName y un campo llamado "nombre", inicie la consola de Rails y escriba:

ModelName.find_by_name(''foo'')

Dado un nombre que existe en la base de datos, debería ver los resultados.

Sin embargo, Rails no deduce relaciones, pero si su base de datos sigue las convenciones de Rails, se agregan fácilmente.

Actualizar

Me he dado cuenta de que esta particular falta de claridad ("magia") es una fuente de confusión para los novatos en Rails. Siempre puede buscar en schema.rb para ver los modelos y todos los campos en un solo lugar. Además, si prefiere ver el esquema para cada modelo en el archivo de modelo, puede usar la joya annotate_models , que colocará el esquema db en un comentario en la parte superior del archivo modelo.


Puedes probar Rmre . Puede crear modelos para el esquema existente e intenta crear todas las relaciones basadas en información de claves externas.



Tu respuesta es:

$ rake db:schema:dump

Eso establecerá un nuevo db/schema.db para crear un esquema de su base de datos.