我需要确定我正在处理的应用程序的当前路径中的路由段键的数量,尽管在相关的 Rails 3 源文件中进行了一些研究,但我无法弄清楚。
我知道如何使用url_for并request从当前路线构建路径,但我不知道如何实际到达正在使用ActionController::Routing::Route的路线的映射url_for。如果我能得到我需要的路由实例,我可以调用 Route#segment_keys 并得到我需要的东西。
如果有人感兴趣,我这样做的原因是我可以使用选择下拉列表在资源之间切换并停留在适用于当前选定资源的当前视图上,但前提是当前路径不包含嵌套路径(即切换/resources/1/edit到/resources/2/edit但不要切换/resources/1/subresources/1到,/resources/2/subresources/1因为subresource数字1不是resource2的孩子)。