执行$ rspec
时会显示以下错误:
未检测到已知的ORM! ActiveRecord,DataMapper,Sequel,MongoMapper,Mongoid,Moped或CouchPotato,Redis还是Ohm加载? (DatabaseCleaner :: NoORMDetected)
这是 spec_helper.rb 文件的摘录:
config.before(:suite) do
DatabaseCleaner.strategy = :transaction
DatabaseCleaner.clean_with(:truncation)
end
有问题的 Rails 应用程序使用 ActiveRecord 作为ORM,并首先检查 ActiveRecord 的documentation for Database Cleaner状态。< / p>
应用程序的 Rails 版本为5.0.0.beta2
。
错误的原因是什么?如何解决?
答案 0 :(得分:2)
原因:
错误是由缺少模型引起的。由于没有模型,因此应用程序未指定 ORM 。因此, DatabaseCleaner 无法选择合适的策略。
<强>解决方案强>
至少应创建一个模型。这可以通过rails generate scaffold
或rails generate model
命令完成。