目前我有上述问题。
根据我的理解,这是一个关于rails自动加载的问题以及如何在各个类的命名空间中使用标准。
无任何范围检索产品/产品的产品。
# product.rb
class Product < ActiveResource::Base
self.site = "#{end_point}/api/v2"
....
end
市场::产品为我们提供了在市场范围内寻求产品的界面,类似于产品。
# market/product.rb
class Market
class Product < ::Product
self.site = "#{end_point}/api/v2/markets/:market_name"
....
end
end
Controller可以调用市场产品对象,但返回的对象只是产品
# market_product_controller.rb
class MarketProductController < ApplicationController
def index
@object = ::Market::Product.all
end
....
end
在api上,它们是2个不同的终点,有2个不同的结果集。
到目前为止,在调用:: Market :: Product时,似乎它正在使用:: Product url和:market_name作为该url的参数。
有一个很好的解决方案吗?
社区其他成员如何解决这个问题?
欢呼给予任何帮助。
答案 0 :(得分:0)
找到我的问题的答案。
http://blog.revathskumar.com/2013/12/activeresource-passing-prefix-options.html
似乎我所有这些都错误地使用了activeresource。
self.site = end_point
self.prefix = '/api/v2/markets/:market_name/'
在嵌套资源方面,这是使用它的正确方法。
当它到达ActiveResource :: Base.rb时,此解决方案可以很好地工作:1029。它将能够从prefix_source获取正确的prefix_parameters,然后创建到远程端点的正确路径。
希望此解决方案可以帮助将来可能遇到同样问题的其他人。