我们的 Rails3 应用程序从 REST 服务器检索所有数据(例如,用于创建/更新/删除/查找 ..),我们应该构建什么抽象,以便我们可以将 JSON 输出转换为 Rails 端的对象。在这种情况下使用 ActiveRecord 对象是否有意义,它似乎不是重量级的,因为我们不会使用 ActiveRecord 对象执行任何数据库持久性调用。我应该使用什么设计范式?
1 回答
这是一个非常难以回答的问题,因为您提供的关于如何使用/操作已使用的数据的信息非常少,但是我认为一个好的指针可能会让您仔细查看 ActiveModel。
查看 Rails 文档 -> 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 开始,这已被弃用,可能不适合继续使用。尽管它已被提取到一个 gem 中,并且只是在开发停滞时才从 Rails 核心中删除。这颗宝石显然已经得到了一些爱,所以你不妨选择这个。
更多信息在这里http://yetimedia.tumblr.com/post/35233051627/activeresource-is-dead-long-live-activeresource当然还有不可避免的 Railscasts -> http://railscasts.com/episodes/94-activeresource-基础知识和http://railscasts.com/episodes/95-more-on-activeresource
希望有帮助