获取项目中定义的所有夹具名称的列表

时间:2014-10-30 08:43:05

标签: ruby-on-rails fixtures minitest

我定义了几个灯具文件,它们由fixtures :all声明加载。

如何获取项目中所有灯具名称的数组?无需通过test / fixtures文件夹搜索* .yml文件。

P.S。一个明显的解决方案是定义一个这样的方法:

def all_fixtures
    @all_fixtures ||= Dir.entries("#{Rails.root}/test/fixtures")
                         .select { |filename| /.*\.yml/.match(filename) }
                         .map{ |filename| filename[0..-5].to_sym }
end

但我确信有更优雅的东西。

1 个答案:

答案 0 :(得分:0)

除了你提到的事情外,我不知道任何其他方法。但是你可以稍微清理一下这个陈述。

直接从ActiveRecord的{​​{1}}复制逻辑,您可以执行以下操作

fixutres.rb