在Rails 3.2中,是否可以为给定的ActiveRecord对象提供多个fixture文件?
客户要求将测试数据写入灯具,但也希望它们易于管理.我想通过引入第二套来分割灯具,原件将包括/要求/渲染任何东西.
我无法通过谷歌找到任何关于如何做到这一点的东西,而且固定装置不是我的一杯茶.提前致谢.
解决方法
在我看来,你想要做的就是从另一个YAML文件中包含一个YAML文件.这是一个问题,涵盖了如何做到这一点:
How to include a YAML file inside a YAML file?
由于灯具已经有ERB,它应该像下面这样简单:
<%= IO.read(Rails.root.join "test/other_fixtures/fixture_to_load.yml") %>
只需确保夹具位于主夹具目录之外,或者加载夹具的机制也会尝试将它们映射到模型.
如果您需要在灯具内部使用ERB,请将其包装在ERB.new中,例如:
<%= ERB.new(IO.read(Rails.root.join "test/other_fixtures/fixture_to_load.yml")).result %>