拥有两个不同数据源的模型的最佳方法

时间:2011-09-12 07:53:41

标签: ruby-on-rails activerecord activeresource

我有一个rails模型,其中一部分数据来自数据库,另一部分来自调用一个宁静的Web服务。有没有办法在同一个模型中使用ActiveRecord和ActiveResource来实现这个目标?

理想情况下,我想加载从懒惰的Web服务中获取的属性(在控制器中访问时),并且默认情况下仅加载db属性。如果我创建两个使用ActiveResource访问服务的模型和一个使用活动资源模型:has_one的ActiveResource模型,那么它是最好的吗?另外,如何确保我只在访问activeresource方法时调用服务(比如before_filter,但仅限于那些方法 - 如果我与其他模型有关系,那么rails是否已经这样做了?)

提前致谢。

1 个答案:

答案 0 :(得分:0)

查看delegate方法......这样您就可以将方法代理到另一个模型。

http://blog.wyeworks.com/2009/6/4/rails-delegate-method