首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActiveResource后缀

ActiveResource后缀
EN

Stack Overflow用户
提问于 2011-06-03 00:14:15
回答 1查看 736关注 0票数 2

使用ActiveResource,调用MyObject.find(id)会得到"self.site/self.prefix/:id.self.format“。我们需要访问"self.site/:id/self.suffix.self.format“而不是id.file_type。

ie:获取http://api_path/:id/tool.json

有没有办法为这个场景配置activeresource?我在文档中找不到太多。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-07 05:50:52

ActiveResource::Base.element_path是创建路径的方法:

代码语言:javascript
复制
def element_path(id, prefix_options = {}, query_options = nil)
  prefix_options, query_options = split_options(prefix_options) if query_options.nil?
  "#{prefix(prefix_options)}#{collection_name}/#{URI.escape id.to_s}.#{format.extension}#{query_string(query_options)}"
end

我会创建一个重定义element_path的类,如下所示:

代码语言:javascript
复制
class CustomApiPath < ActiveResource::Base
  def element_path(id, prefix_options = {}, query_options = nil)
    prefix_options, query_options = split_options(prefix_options) if query_options.nil?
    "#{prefix(prefix_options)}#{URI.escape id.to_s}/#{collection_name}.#{format.extension}#{query_string(query_options)}"
  end
end

(警告:未测试),然后其他ActiveResource模型将继承自CustomApiPath,而不是ActiveResource::Base。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6217193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档