如何从Rails 3路线获取分段键?
|
我需要确定我正在处理的应用程序的当前路径中路由段键的数量,尽管在相关的Rails 3源文件中进行了一些挖掘,但仍无法弄清。
我知道如何使用
url_for
和request
从当前路线构建路径,但是我不知道如何实际到达映射到url_for
正在使用的路线的ActionController::Routing::Route
。如果可以获取所需路由的实例,则可以调用Route#segment_keys并获取所需的路由。
如果有人感兴趣,我这样做的原因是,我可以在带有选择下拉菜单的资源之间切换,并停留在适用于当前选定资源的当前视图上,但前提是当前路径不包含嵌套的路径(即将/resources/1/edit
切换到/resources/2/edit
,但不要在/resources/1/subresources/1
到/resources/2/subresources/1
之间切换,因为subresource
1号不是resource
2的子级)。
没有找到相关结果
已邀请:
3 个回复
补蹲农界维
如您所见,使用request.fullpath.split(\“ / \”)创建了一个分配给url_path的数组。从这里,我可以提取出想要的内容或计算数组中元素的数量。我希望这能将您推向正确的方向。
械怒等
那只是让我了解一下文字片段的数组-我敢打赌,您可以修改它以计算存在的片段键的数量(或者对文字立即执行一次,对符号重复一次)
支持
,这将为您提供所使用的原始字符串来构造路线和
,这会给您一个正则表达式,您可以在
上运行
嘘崇蔡对