Rails模型使用API​​而不是数据库

Gre*_*sen 13 api single-responsibility-principle ruby-on-rails-3

我正在重构当前使用数据库和ActiveRecord的rails应用程序,因此它使用JSON API(Sinatra)而不是数据库.

重构模型的最佳方法是什么?API将返回与数据库相同的所有信息.事实上,它是相同的数据库,但是对于可扩展性和需要访问数据的多个应用程序,我们需要将其转换为API.理想情况下,只有模型需要更改,理想情况下我可以在rails应用程序中保留一些验证.

如何更改模型,以便通过API调用而不是ActiveRecord数据库调用来检索和保存实例?

Dom*_*ker 13

我想你正在寻找像ActiveResource这样的东西


0bs*_*r07 7

对于Rails 4,请查看:

https://github.com/whichdigital/active-rest-client

此gem用于以ActiveRecord样式访问REST服务.ActiveResource已经存在,但它在资源命名不遵循Rails约定的情况下不起作用,它没有内置缓存,并且它一般不灵活.