将 Rails 应用程序升级到 Rails 5 后,运行 RSpec 测试会出现以下错误:
rails aborted!
ActiveRecord::NoEnvironmentInSchemaError:
Environment data not found in the schema. To resolve this issue, run:
bin/rails db:environment:set RAILS_ENV=test
但是,bin
不存在,我似乎无法使用 bundle binstubs rails
生成它或与 rake rails:update:bin
.
我也尝试过:
rails db:environment:set RAILS_ENV=test
rake db:environment:set RAILS_ENV=test
Github 上有一个相关问题 here .
如何解决此错误?
最佳答案
用于生成 binstub 的新 Rails 5 命令:
rails app:update:bin
允许我按照错误建议运行解决方案:
bin/rails db:environment:set RAILS_ENV=test
来自 @max 评论的提示:如果您正在使用 database_cleaner
并且此错误不断弹出,请将您的配置更改为:
DatabaseCleaner.clean_with(
:truncation,
except: %w(ar_internal_metadata)
)
关于ruby-on-rails - Rails 5,Rspec : Environment data not found in the schema,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38209186/