【发布时间】:2010-10-08 10:18:37
【问题描述】:
我有一个初始化程序,它设置了在整个应用程序中使用的默认值。该值是一个 ActiveRecord 模型,我实际上是在应用程序的生命周期内缓存它:
@@default_region = Region.find_by_uri("whistler")
记录保证在数据库中:它是被其他模型引用的夹具数据。这工作正常,除非在每次测试运行之前清除数据库的测试环境中。 (我在边缘轨道上运行,我认为这是最近的行为:我曾经能够手动插入数据并在测试运行之间保留它。)我的 regions.yml 夹具文件中也有记录,但夹具不是' t 加载,直到 rails 初始化程序完成。
处理这种对夹具数据的依赖的正确方法是什么?或者有没有更好的方法来构建它?我宁愿不使用 before_filter,因为在每个请求上重新加载它是没有意义的:它不会改变,除非在不同的部署中。
【问题讨论】:
标签: ruby-on-rails testing dependencies fixtures initializer