Ruby on rails Rails到资源集的路由?
典型的铁路路线如下:Ruby on rails Rails到资源集的路由?,ruby-on-rails,rest,routes,Ruby On Rails,Rest,Routes,典型的铁路路线如下: resource :customer 为索引、显示等设置路由 要访问所有客户,我可以使用路线 /customers 要访问单个客户,我使用: /customers/1 创建允许用户查看一组客户的路由和控制器操作(例如 /customers/[1,2,3,4,5] 更新了基本原理 用例: 此操作将通过Javascript调用,以提供所选用户的详细信息。如果用户通过界面选择3个客户,我希望一个请求为所有3个客户提取信息,而不必提出3个单独的请求 您只需保持路线简单:
resource :customer
为索引、显示等设置路由
要访问所有客户,我可以使用路线
/customers
要访问单个客户,我使用:
/customers/1
创建允许用户查看一组客户的路由和控制器操作(例如
/customers/[1,2,3,4,5]
更新了基本原理
用例:
- 此操作将通过Javascript调用,以提供所选用户的详细信息。如果用户通过界面选择3个客户,我希望一个请求为所有3个客户提取信息,而不必提出3个单独的请求
资源:客户
id列表将被路由视为:id
,您将在参数[:id]
中获得[1,2,3,4]
然后,在控制器中,例如在before\u筛选器中,您可以检查id是否与某个regexp匹配(例如…
/\[(\d,)*\d\]/
),如果是这种情况,您可以提取id。这些客户是如何关联的?例如,如果我想在同一页上看到客户1、2、3、4和5,为什么我要看到这些特定的客户?我想,通过更多地了解您的情况,可以更好地解决这个问题。我仍然不相信“RESTful”意味着永远不使用查询参数,在这里,哪种IMO可能是合理的解决方案。@JacobWG我也想到了同样的方法……可能会添加一个“组”模型来表示一组客户。由于用户可以选择任意的客户,预定义的组对我的用例不起作用,我希望有一些惯用的Rails/REST方法来做到这一点,但由于似乎没有一致认为您的方法听起来是可行的。