2014-03-29 50 views
0

我正在学习Ruby on Rails,创建数据库时出错。我从控制台运行以下命令:Git Project上的Rails迁移错误

rake db:create db:migrate db:seed 

并获得:

== 20140328232600 AddAuthLevelToUser: migrating =============================== 
-- add_column(:users, :auth_level, :Integer) 
rake aborted! 
StandardError: An error has occurred, this and all later migrations canceled: 

PG::UndefinedTable: ERROR: relation "users" does not exist 

我看着网页上的错误信息,并试图运行:

'bin/rake db:migrate RAILS_ENV=development' 

如所建议的,但没有运气。

我正在开发的这个项目是由另一个开发团队开始的,所以我把它从混帐中解脱出来......任何建议?

干杯

回答

3

根据错误,当您在数据库中甚至没有users表时,您正在运行迁移AddAuthLevelToUser

首先,验证是否有users表的迁移,如果没有,则创建一个。

如果是,则检查users表迁移具有版本号比的AddAuthLevelToUser低。修复它并运行迁移。

1

尝试运行只是在第一耙db:create。你的项目使用什么数据库?解决这个问题并使用数据库客户端连接到本地系统上的数据库,并验证数据库上是否存在用户表。有可能db:create job不能正确创建数据库模式所需的所有表。

+0

我已经通过销毁和重新创建数据库来临时解决,虽然这并不理想,谢谢:) – MrD