当我转到http:// localhost:3000 /时,我得到以下信息:
ActiveRecord :: PendingMigrationError
迁移正在进行中。要解决此问题,请运行:bin / rails db:migrate RAILS_ENV = development
提取的来源:
# Raises <tt>ActiveRecord::PendingMigrationError</tt> error if any migrations are pending.
def check_pending!(connection = Base.connection)
raise ActiveRecord::PendingMigrationError if ActiveRecord::Migrator.needs_migration?(connection)
end
def load_schema_if_pending!
另外,当我尝试进入heroku run rake db:migrate
控制台时,它说:
StandardError:发生错误,此错误和所有后续迁移被取消:PG :: DuplicateColumn:错误:关系“用户”的列“电子邮件”已经存在
我是红宝石的新手,并且遵循Mackenzie Child的设计教程。这是完成我的第一个红宝石应用程序的最后一步。
我很高兴,期待您的帮助!:)
您使用了devise生成器为User
模型准备迁移。您的模型之前已经存在,并且已经有email
专栏。由设计生成的迁移尝试创建相同的列,并且预期会失败,这就是您所看到的错误的原因:
PG :: DuplicateColumn:错误:关系“用户”的列“电子邮件”已存在
要解决此问题,只需打开由devise生成的迁移并删除看起来像这样的行:
t.string :email...
然后运行rake db:migrate
。
更新
由于您的数据库似乎与迁移不同步,建议您从头开始重新创建它。
跑步
rake db:drop db:create db:migrate
请注意,所有数据库数据都将被销毁。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句