【问题标题】:After Rails 3 upgrade rake db:test:prepare not working?Rails 3 升级后 rake db:test:prepare 不工作?
【发布时间】:2011-07-01 17:08:02
【问题描述】:

我刚刚完成了将使用测试单元的 Rails 2.3.11 应用程序升级到 Rails 3.1.rc4 的过程,现在我已经设置了 rspec-rails 2.6.1。

我还将database.yml 中的测试连接切换为使用 sqlite 而不是 postgres。

我可以整天运行 rake db:migratedb:test:prepare,但在我的模型测试中我得到“找不到表 'model_name'”。

还有其他人遇到过这个吗?

【问题讨论】:

  • 试试 bundle exec rake db:setup ?
  • @CountCet:我在这里遇到了同样的问题,但是在运行guard 时。 bundle installrake db:resetrake db:test:prepare 在这里修复了它,但我仍然不知道为什么会这样。

标签: ruby-on-rails-3 rspec rake rspec2


【解决方案1】:

我以前确实遇到过这种情况。尝试从头开始重建它:

rake db:drop RAILS_ENV=test
rake db:create RAILS_ENV=test
rake db:migrate RAILS_ENV=test

【讨论】:

    【解决方案2】:

    select * from schema_migrations 向您展示了什么?验证您期望的迁移是否已全部实际存储。如果您知道哪个迁移失败,您可以使用rake db:migrate:redo VERSION=<VERSION>

    抱歉没有发表评论。 StackOverflow 的“直到 50 岁才能发表评论”政策似乎有点倒退:)

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      • 1970-01-01
      • 2018-07-02
      相关资源
      最近更新 更多