我们的Rails3应用程序从REST服务器检索所有数据(例如,用于创建/更新/删除/查找..),我们应该构建什么抽象,以便我们可以将JSON输出转换为Rails端的对象。在这种情况下使用ActiveRecord对象是否有意义,它似乎是重量级的,因为我们不会使用ActiveRecord对象执行任何数据库持久性调用。我应该使用什么设计范例?
答案 0 :(得分:0)
这是一个非常难以回答的问题,因为您提供的关于如何使用/操作已消耗数据的信息非常少,但我认为一个好的指针可能会让您仔细查看ActiveModel。
查看rails docs - > http://apidock.com/rails/Rails/Generators/ActiveModel
查看令人敬畏的RailsCasts - > http://railscasts.com/episodes/219-active-model
这将为您提供与ActiveRecord相同的api,但没有数据库,因此您可以以对Rails开发直观的方式操作数据。
我建议使用ActiveResource - > http://apidock.com/rails/ActiveResource/Base。这是在Rails中使用REST API的一种极好方法,但是从Rails v4开始就不推荐使用它,可能不适合继续使用。虽然它已经被提取到一个宝石中,但只是从Rails核心中删除,因为开发停滞不前。宝石显然已经得到了一些爱,所以你可能希望这样做。
此处有更多信息http://yetimedia.tumblr.com/post/35233051627/activeresource-is-dead-long-live-activeresource,当然还有不可避免的Railscasts - > http://railscasts.com/episodes/94-activeresource-basics和http://railscasts.com/episodes/95-more-on-activeresource
希望有所帮助