从网址获取

时间:2019-06-09 23:47:22

标签: ruby-on-rails ruby-on-rails-5

我正在尝试为Rails应用程序的后端自动化创建面包屑。我几乎在那儿,我只需要能够做一件事就可以完成它。

我需要能够获取当前请求网址的路由助手。

例如:

当前网址为/admin/pages

所以我需要一种获取该URL的帮助器的方法,该URL将为admin_pages_path

我想要类似get_path_from_url(request.original_url) # returns admin_pages_path helper

有人知道我可以做到这一点吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

由您自己决定完成某项工作的奇怪方式由您决定。如果您确实想执行此类操作,则可以检查url中的模式并有条件地确定帮助方法

有点像

url_path_map = {
    /admin\/pages/ => :admin_pages_path_helper,
    /admin\/pages\/\d/ => :admin_page_path_helper
}

incoming_url = '/admin/pages'
helper = url_path_map.select{|url_rgex, helper| incoming_url.match(url_rgex).present?}.first[1]

最终像这样呼叫助手

send helper