所以基本上我创建了一些客户端方法,这些方法会创建一个命中外部服务的路径。 另外,我使用的是可寻址的宝石。
以下是一个例子:
def get_member(ord_id, member_id)
path = '/organizations/{ord_id}/people/{member_id}'
hash = get(path, member_id: member_id, org_id: ord_id)
{ Member.custom_deserialize_method(hash) }
end
如果路径如上所述简单,则此方法有效。
现在我想为不同的路径编写一个方法,它可以像这样进行批量查找:
organizations/ab9176be/members/bulk?memberId=8e936891&memberId=b71c4f1e (This is not a web url. Its a service end point)
上述方法可以有多个memberId参数。 我知道addressable有一个expand方法,而ruby有一个to_param方法。
但我不知道这对我的情况是否有帮助。我很感激这里的一些帮助。
答案 0 :(得分:0)
我确定这会有所帮助,但考虑到你没有回复,我觉得我最好发帖
几个星期前我了解了route globbing。基本上,这允许您定义这样的路线:
get 'books/*section/:title', to: 'books#show'
匹配
books/some/section/last-words-a-memoir
params[:section]
等于'some/section'
,params[:title]
等于 '最后字-A-自传'。
虽然与您的问题的解决方案没有直接关系,但它可能会帮助您了解Rails如何处理应用程序中的某些路线。从本质上讲,它意味着您可以根据需要添加任意数量的“通配符”路由,并在params
哈希