【问题标题】:Rails app error - ActiveRecord::PendingMigrationError Migrations are pending; run 'rake db:migrate RAILS_ENV=development' to resolve this issueRails 应用程序错误 - ActiveRecord::PendingMigrationError 迁移未决;运行 'rake db:migrate RAILS_ENV=development' 来解决这个问题
【发布时间】:2014-08-11 22:58:28
【问题描述】:

数据库已创建,表已创建,数据在那里。

但是在我重新启动 Rails 应用程序后,我得到了这个错误。该应用程序正在使用 MySQL。 这里有什么问题?

提前谢谢你

【问题讨论】:

  • 还有待处理的迁移吗?是什么让你觉得没有?

标签: mysql ruby-on-rails ruby activerecord migration


【解决方案1】:

只需运行rake db:migrate 然后启动服务器,看看会发生什么,看起来现有的迁移还不是架构的一部分。或者您的 schema_migrations 表可能缺少某些版本值。

【讨论】:

    【解决方案2】:

    尝试运行 bundle exec rake db:migrate RAILS_ENV=developmentfor 我只运行 bundle exec rake db:migrate 并没有解决问题

    【讨论】:

      【解决方案3】:

      解决方案

      简单运行

      rake db:migrate
      

      在您的服务器启动之前需要运行一些迁移。了解什么是迁移以及它们在 Rails 中的使用方式with this RailsGuide

      在您进行迁移或创建新项目时运行rake db:migrate 命令。如果您收到错误提示迁移正在等待,这就是答案。然后尝试再次启动服务器。

      仅当这不起作用时,请尝试以下内容。

      如果这不起作用

      按此顺序运行这些命令:

      1. rake db:drop

      2. rake db:create

      3. rake db:migrate

      4. rake db:seed - 只有在你有种子数据时才需要这个。

      记住,如有疑问:重启服务器!

      【讨论】:

        【解决方案4】:

        作为上述cmets之一,为我使用以下作品:

        rake db:drop
        
        rake db:create
        
        rake db:migrate
        

        rake db:migrate 或重新启动没有帮助时。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-02-08
          • 2016-03-15
          • 1970-01-01
          • 2013-12-03
          • 1970-01-01
          • 2017-12-10
          • 2015-04-29
          • 1970-01-01
          相关资源
          最近更新 更多