[英]Testing models with multiple database connections in Rails using ActiveRecord
测试在Rails中使用不同数据库连接的模型的最佳方法是什么? 例如,我有一个只读的模型FooBar:
class FooBar < ActiveRecord::Base
establish_connection configurations['foo_bars']
# ...
end
那里有什么好的约定,黑客或插件吗?
根据我的经验,一旦建立连接,您就可以像处理任何其他模型一样对待模型。 由于您只是在使用简化某些测试的数据,因为您不需要测试数据验证。
显然因为Rails正在与来自两个不同模型的两个不同的数据库进行通信,所以您将无法在数据库之间进行连接,因此也无法在那里进行测试。
那么,回答这个问题:测试使用第二个数据库的模型的最佳方法是什么? 我会说,如果它是你唯一的数据库,那么你将测试它的方式完全相同。
我发现在我的模型中包装我的遗留数据库时,我必须在代码中添加一些特殊的联系,使事情变得更加“Rails-y”,并使视图和控制器代码看起来像has_one
和belongs_to
类型代码。 我确实有运行这些自定义方法的测试。
希望有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.