Forum: Rails-ES Problema con rake db:migrate

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Fernando (Guest)
on 2009-03-24 20:55
(Received via mailing list)
Hola amigos,

Tengo un problema que me está volviendo loco.
Estoy tratando de seguir el tutorial de los screencast de Vicen
"Openticket", hasta ahora teniendo en cuenta que está desarrollado en
2.1 y yo etoy con 2.2, he ido solventando las dificultades que la
diferencia de versiones me plantea (googleando y demás).
Debo decir también que no le planteo la duda a Vicen directamente,
puesto que estoy convencido que lo me ocurre ahora es algo muy general
que nada tiene que ver con el tutorial en concreto. Os cuento:

Voy por el capítulo 4, trabajando con Rest_full_authentication.

- He podido instalar el plugin, y he generado con migrate los
controllers, models, views y el migrate.
- El problema me viene al tratar de hacer el rake db:migrate. Hasta
ahora funcionaba sin problemas. Pero al tratar de hacer el rake:db
migrate sobre el último migration (que os pongo aquí abajo), lo
aborta, porque dice que la tabla tickets ya existe ¿?. Pero si al
anterior migrate (tickets) este último no debería afectarle, ¿no?

class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table "users", :force => true do |t|
      t.column :name, :string
      t.column :admin, :integer
      t.column :login,                     :string
      t.column :email,                     :string
      t.column :crypted_password,          :string, :limit => 40
      t.column :salt,                      :string, :limit => 40
      t.column :created_at,                :datetime
      t.column :updated_at,                :datetime
      t.column :remember_token,            :string
      t.column :remember_token_expires_at, :datetime
    end

      # Creamos dos usuarios iniciales
      User.create(:name => "admin", :admin => 1, :login => "admin",
                        :email => "removed_email_address@domain.invalid", 
:password =>
"admin",
                        :password_confirmation => "admin")

      User.create(:name => "agent", :admin => 0, :login => "agent",
                        :email => "removed_email_address@domain.invalid", 
:password =>
"agent",
                        :password_confirmation => "agent")
  end

  def self.down
    drop_table "users"
  end
end

Hago:
rake db:migrate

Y me devuelve esto (no entiendo nada):
(in C:/AppServ/www/openticket)
==  CreateTickets: migrating
==================================================
-- create_table(:tickets)
rake aborted!
An error has occurred, all later migrations canceled:

Mysql::Error: Table 'tickets' already exists: CREATE TABLE `tickets`
(`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `project_id`
int(11), `user_id` int(11), `assigned_to` int(11), `title`
varchar(255), `description` text, `closed` int(11) DEFAULT 0,
`created_at` datetime, `updated_at` datetime) ENGINE=InnoDB

Por cierto, y por si sirve de algo, los nombres de los migrations son,
creo que están bien, es decir que son correlativos en fechas:
20090317091444_create_projects.rb
20090319141853_create_tickets.rb
20090324175744_create_users.rb


Un saludo y gracias de antemano
--
Fernando V.
Web Designer
http://www.fernandoval.com
Guillermo (Guest)
on 2009-03-24 21:07
(Received via mailing list)
Si no tienes datos, que es lo más probable, borra la base de datos y
vuelve
a crearla:
rake db:drop db:create db:migrate

Probablemente hayas ejecutado alguna migración antes de tiempo ya que te
dice que ya existe la tabla.

Si tienes datos, haz copia del contenido, recrea la base de datos y
carga el
volcado anterior.


--
Guillermo Álvarez

Sent from: Madrid Comunidad de Madrid España.
Fernando G. (Guest)
on 2009-03-24 21:17
(Received via mailing list)
Asegúrate de estar en la version del schema que crees estar:

$ rake db:version

Si quieres correr la
migración:20090319141853_create_tickets.rb

Pero la tabla ya existe por lo que sea, puedes hacer varias cosas:

1) comentar todo el método up para que no haga nada pero que corra la
versión del schema
2) borrar la tabla a pelo.
3) invocar directamente al create_tickets.down

script/console
>> require 'db/migrate/20090319141853_create_tickets'
>> CreateTickets.down

Y bueno.. un montón más de cosas..

Pero acostúmbrate a que las migraciones no vayan tan suaves como
deberían, muchas veces tendrás que hacer truquitos de estos para salir
del paso.

f.
Agustin R. (Guest)
on 2009-03-24 22:42
Buenas:

El problema esta en el rake ha perdido la ultima migración realizada, y
está intentando ejecutarla. Esto mismo me paso a mí pasando de un
entorno de desarrollo a otro de producción. Cada uno guarda una tabla
llamada "schema_migrations" en la cual se guardan las migraciones
realizadas. Verás como en esa tabla no esta la migración de los tickets,
la pones y ya lo tienes en marcha de nuevo.

Un saludo

ARA
Fernando (Guest)
on 2009-03-24 23:00
(Received via mailing list)
Muchas gracias a todos.

Efectivamente había perdido un rake, concretamente el de tickets que
en lugar de 20090319141853, en la base de datos ponía otro número
totalmente distinto.

Y por lo me me decís empezaré a tener en cuenta que rake db:xxxx a
veces hace de las suyas...
Así que la próxima vez que tenga un problema con rake, lo primero que
miraré será la tabla schema_migrations.
Supongo que ahora que lo pienso es algo obvio, y debería haber
empezado por ahí, pero ya me disculparéis, es que soy un pobre
diseñador metido a estos líos de la programación (por gusto claro)...
:-)

Lo dicho, muchas gracias



El día 24 de marzo de 2009 21:42, Agustin R.
<removed_email_address@domain.invalid>
escribió:>
> ARA
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
Fernando V.
Web Designer
http://www.fernandoval.com
Efrén José Fuentes R. (Guest)
on 2009-03-25 01:18
(Received via mailing list)
Si no es mucha molestia Fernando, podrías decirme donde conseguir los
capitulos 4 y 6,
estuve indagando en el blog de Vicent  http://www.vicentgozalbes.com/
y encontre los capitulos 1-3, 5, 7-12.

Te estaria muy agradecido.

El 24/03/2009, a las 04:29 p.m., Fernando
escribió:
> ezaré a tener en cuenta que rake db:xxxx a
Fernando (Guest)
on 2009-03-25 02:21
(Received via mailing list)
Pues no lo recuerdo, pero me costó bastante encontrarlos.
Mañana si eso los subo a yousendit y te paso el enlace...


El día 25 de marzo de 2009 0:17, Efrén José Fuentes R.
<removed_email_address@domain.invalid>
escribió:>> Así que la próxima vez que tenga un problema con rake, lo primero 
que
>> miraré será la tabla schema_migrations.
>> Supongo que ahora que lo pienso es algo obvio, y debería haber
>> empezado por ahí, pero ya me discul
>
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
Fernando V.
Web Designer
http://www.fernandoval.com
Juan martin F. (Guest)
on 2009-03-25 03:03
(Received via mailing list)
podrias subir todo el curso ya que estamos!!!

2009/3/24 Efrén José Fuentes R. <removed_email_address@domain.invalid>:
>> Así que la próxima vez que tenga un problema con rake, lo primero que
>> miraré será la tabla schema_migrations.
>> Supongo que ahora que lo pienso es algo obvio, y debería haber
>> empezado por ahí, pero ya me discul
>
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
............................................................
J. Martin Fernandez Szutner
removed_email_address@domain.invalid [main address]
móvil: ++521(662)224.02.81
msn: removed_email_address@domain.invalid
skype: martinszutner




...........................................................................................
This e-mail is confidential and/or may contain privileged information.
If you are not the addressee or authorized to receive this for the
addressee, you must not use, copy, disclose, or take any action based
on this message or any
other informat ion herein, please advise the sender immediately by
reply this e-mail and delete this e-mail and its attachments.
...........................................................................................
Vicent G. (Guest)
on 2009-03-25 12:56
Hola,
siento no haber leído este post antes, los capítulos ahora están un poco
desfasados, aunque alguna idea se puede coger de ellos. Para cualquier
problemilla, podéis contactar directamente conmigo en vigosan @
gmail.com

Un saludo,
Vicent
Fernando (Guest)
on 2009-03-25 15:46
(Received via mailing list)
Hola Vicen,

La verdad es que aunque estan algo desfasados, (son para la
versión1.2), me estan gustando mucho cómo entrenamiento REST. Además con
algunos apaños y adaptaciones voy tirando para adelante con
Openticket.
y así de paso espabilo un poco a resolver problemas. Todo ayuda.

Y respecto a conseguir acceder a ellos, la verdad es que está un poco
difícil, ya que tu mefisto da una pantalla de error cuando te pones a
buscarlos. ¿Podrías subirlos a otro sitio?, ya que cómo ves siguen
triunfando.

Si estás muy liado, dimelo y los subo yo en Rapidshare y lo publico
aqui, e la lista ror.

Por cierto, soy arromnido (Fernando V.), el mismo de tu estupendo
"mientrenamiento.com".

Un saludo.

El día 25 de marzo de 2009 11:56, Vicent G.
<removed_email_address@domain.invalid>
escribió:> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
Fernando V.
Web Designer
http://www.fernandoval.com
Vicent G. (Guest)
on 2009-03-25 15:54
Anda Fernando,
que alegría y que pequeño el mundo =)

He puesto los enlaces de rapidshare en este otro hilo:

http://www.ruby-forum.com/topic/182448#new

Si tienes dudas ya conoces mi correo, te puedo ayudar en todo lo que
necesites.

Un saludo.
Fernando (Guest)
on 2009-03-25 21:19
(Received via mailing list)
Muchas gracias Vicen, la verdad es que tampoco quería darte mucho la
vara, ya que con mientrenamiento.com andas ya bastante liado, pero
gracias sí me veo atascado en algún momento, te doy un toque.
Que por cierto, la serie de screencast está genial, y la aplicación al
final queda muy chula.
¿Has pensado en continuar con ella?

Yo estaba pensando cuando llegue al 12, adaptarla a las necesidades de
la empresa donde curro, enfocándola sobre todo al tema SCRUM, con los
sprints y las iteraciones y demás. Luego igual le añado un gestor de
archivos y tal...
Pero poco a poco, que de momento no tengo demasiado tiempo libre...

Un abrazo.

El día 25 de marzo de 2009 14:54, Vicent G.
<removed_email_address@domain.invalid>
escribió:> Un saludo.
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>



--
Fernando V.
Web Designer
http://www.fernandoval.com
Mario S. (Guest)
on 2009-03-25 22:20
Si te parece, lo mejor sería crear un proyecto en Github donde
pudiéramos colaborar, mi usuario es vigosan =)
Manuel González Noriega (Guest)
on 2009-03-25 22:33
(Received via mailing list)
2009/3/25 Fernando <removed_email_address@domain.invalid>

> archivos y tal...
> Pero poco a poco, que de momento no tengo demasiado tiempo libre...
>
> Un abrazo.
>

Creo que esto se está poniendo un poco personal para la lista ;)
Fernando (Guest)
on 2009-03-25 23:38
(Received via mailing list)
Perdonad amigos,

No me di cuenta que a la vez que le respondía a Vicen en privado,
estaba respondiendo a la lista...  :-(

Yo por mi parte doy por cerrado el hilo.

Muchas gracias a todos por el interés mostrado y por la gran ayuda que
me habéis prestado.



2009/3/25 Manuel González Noriega <removed_email_address@domain.invalid>:
>>
>
> --
> Manuel,
> http://simplelogica.net + http://www.logicola.net/
>
> _______________________________________________
> Ror-es mailing list
> removed_email_address@domain.invalid
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>
>



--
Fernando V.
Web Designer
http://www.fernandoval.com
This topic is locked and can not be replied to.