Parece que o seguinte é verdade:
20120525005302_create_users.rbtentará criar umuserstabela em seu banco de dados.20120611000411_devise_create_users.rbtambém tentará criar umuserstabela no banco de dados.- No momento, seu banco de dados já tem um
userstabela nele, para que a migração falhe na segunda migração.
Para obter os
users tabela em seu banco de dados para corresponder corretamente ao 20120611000411_devise_create_users.rb migração, você pode fazer uma das duas coisas:- Reverta (ou elimine) o banco de dados e execute as migrações novamente. (Você pode excluir o
20120525005302_create_users.rbse estiver vazio.) - Modifique seu
20120611000411_devise_create_users.rbmigração para eliminar quaisquerusersexistentes table antes de fazer qualquer outra coisa. - Modifique seu
20120611000411_devise_create_users.rbmigração da seguinte forma:- Em vez de criar um
userstabela, modifique a tabela existente. - Adicione e modifique os componentes do banco de dados para corresponder
- Em vez de criar um
Geralmente, se seu aplicativo estiver em um "estado infantil", a recriação do banco de dados tende a ser uma maneira rápida de construir a estrutura inicial de um aplicativo. No entanto, se você já possui dados importantes em seus
users table, você vai querer manter isso e continuar modificando o 20120611000411_devise_create_users.rb migração para alterar o banco de dados de forma não destrutiva. Referências