Problema con migraciones y Oracle

Hola a todos.

Pues veréis estoy trabajando con rails y oracle, mi problema es el
siguiente, cuando hago migraciones, no se me crean las tablas, y no es
por que lo haga mal, ya que cuando tengo unas 5 o 6 migraciones
perteneciente a varios modelos creados de forma auxiliar para “rellenar”
entonces cuando hago el rake migrate si me crea la migración de forma
correcta.

Es decir a ver si me explico mejor cuando hago por primera vez en mi
aplicación:
“ruby script/generate model persona” me crea todos los archivos
correspondientes (la migración incluida 001_create_personas) cuando
modifico esta migración añadiéndole las columnas, y hago “rake
db:migrate” no hace nada, es decir simplemente me saca el directorio que
siempre sale, pero no me pone nada de lo de tabla creada ni nada por el
estilo, que es lo que suele salir,no?.

Sin embargo he creado una serie de modelos auxiliares en mi aplicación,
desde 0, es decir sin nigun modelo anterior creado como he dicho antes,
es decir:
ruby script/generate model a
ruby script/generate model b
ruby script/generate model c
ruby script/generate model d
ruby script/generate model e
y acontinuación
ruby script/generate model persona

creandome como antes todos sus archivos y tambén su correspondiente
migración, en este caso “006_create_personas”
ahora si modifico igual que antes la migración añadiendo las columnas
correspondientes y haciendo “rake db:migrate” pues si me sale todo lo
correspondiente y ademas me crea la tabla correspondiente.

¿Por qué se supone que pasa esto?¿alguien me puede ayudar?
Me urge, tengo que entregar un trabajo el martes :frowning:

Muchas gracias y saludos!!

Hola a todos otra vez!

Yo mismo me respondo.

Mi problema es el siguiente, yo he estado utilizando como editor el
radRails, no sé si tendrá algo que ver o no, pero como bien pone en la
web de rubyForge:

Automatic RadRails configuration: if your choose
your Instant Rails “rails_apps” subdirectory as
your workspace, then all of the RadRails paths
(to ruby, rake, ri, rdoc, etc.) will be automatically
set.

Yo no he estado usando el subdirectorio “rails_apps” sino que me había
creado otro con el nombre de “rails”, he empezado a crear las
aplicaciones en este directorio y usar como workspace de RadRails el
directorio “rails_apps” y efectivamente, ahora sí que me funciona a la
perfección las migraciones.

Saludos y muchas gracias por todo!

Vale, no me hagáis caso, ha sido pura casualidad que me funcionase,
después me ha vuelto a fallar de la misma manera…no entiendo el por
qué.

Saludos!

en la tabla schema_info tenes la version de la migracion corriente
fijate si esta bien, o sea que si tu ultima migracion es 006 y la
tabla tiene el 6 no va a hacer nada el rake db:migrate

por otro lado podes hacer:
rake db:migrate version=0 y volves al comienzo
para hacer rake db:migrate y vas hasta la ultima.

Ojo con rake db:migrate version=0 porque es destructiva, te hace el
drop de las tablas.

Te paso este tutorial que quizas te ayude.

http://wiki.onrails.com.ar/wiki/show/Migrations

Saludos

P

Hola a todos.

Después de mucho tiempo vuelvo a visitar las listas…los estudios me
comen.

Con respecto a ruby y oracle, quería dejar una cosa clara que no
especifiqué en su tiempo.

Resulta, que el problema de las migraciones que me daba, se debe, a que
Oracle, sólo crea una tabla “schema_info”, y por tanto, hay conflicto
cuando tienes 2 proyectos ya que se apoyan en la misma base de datos, no
así como mysql, sqlite, etc…

Un saludo!

Pablo wrote:

Hola a todos.

Pues veréis estoy trabajando con rails y oracle, mi problema es el
siguiente, cuando hago migraciones, no se me crean las tablas, y no es
por que lo haga mal, ya que cuando tengo unas 5 o 6 migraciones
perteneciente a varios modelos creados de forma auxiliar para “rellenar”
entonces cuando hago el rake migrate si me crea la migración de forma
correcta.

Es decir a ver si me explico mejor cuando hago por primera vez en mi
aplicación:
“ruby script/generate model persona” me crea todos los archivos
correspondientes (la migración incluida 001_create_personas) cuando
modifico esta migración añadiéndole las columnas, y hago “rake
db:migrate” no hace nada, es decir simplemente me saca el directorio que
siempre sale, pero no me pone nada de lo de tabla creada ni nada por el
estilo, que es lo que suele salir,no?.

Sin embargo he creado una serie de modelos auxiliares en mi aplicación,
desde 0, es decir sin nigun modelo anterior creado como he dicho antes,
es decir:
ruby script/generate model a
ruby script/generate model b
ruby script/generate model c
ruby script/generate model d
ruby script/generate model e
y acontinuación
ruby script/generate model persona

creandome como antes todos sus archivos y tambén su correspondiente
migración, en este caso “006_create_personas”
ahora si modifico igual que antes la migración añadiendo las columnas
correspondientes y haciendo “rake db:migrate” pues si me sale todo lo
correspondiente y ademas me crea la tabla correspondiente.

¿Por qué se supone que pasa esto?¿alguien me puede ayudar?
Me urge, tengo que entregar un trabajo el martes :frowning:

Muchas gracias y saludos!!

Muchisimas gracias, ahí estaba mi fallo, menos mal que estais vosotros.

Saludos!