有人在这里问了这个问题:
How to load db:seed data into test database automatically?
但是他们的解决方案只有在你要运行db:test:prepare时才有效,这取决于要加载的模式。 Mongoid没有模式文件,db:test:prepare没有做任何事情,所以这不起作用。还有其他策略可行吗?
答案 0 :(得分:1)
这里有一个类似的问题。我认为特别是最后一个答案会对你有所帮助:
答案 1 :(得分:1)
就像一个FYI,我找到了满足我要求的方法。我在mongoid.yml中设置了一个名为seed的数据库:
databases:
seeds:
database: seeds_db
host: localhost
port: 27018
然后在我的模型中,我只使用数据使用种子:
class SeededData
include Mongoid::Document
set_database :seeds
这实际上很有效,因为生产,测试和开发都来自种子数据库,这就是我想要的。而且我在运行测试时从不抽真空数据。