ruby-on-rails – 如何确定给定URL字符串的Controller类
发布时间:2020-12-16 21:38:10 所属栏目:百科 来源:网络整理
导读:在Rails控制器或视图的范围内: 如何查询Rails路由机制以将相对url字符串(例如“/ controllername / action / whatever”)转换为负责处理该请求的控制器类? 我想做这样的事情: controllerClass = someMethod("/controllername/action/whatever") contorlle
在Rails控制器或视图的范围内:
如何查询Rails路由机制以将相对url字符串(例如“/ controllername / action / whatever”)转换为负责处理该请求的控制器类? 我想做这样的事情: controllerClass = someMethod("/controllername/action/whatever") contorllerClass是Class的一个实例. 我不想对路由约定做任何假设,例如.以上示例中的“controllername”始终是控制器的名称(因为它不是). 解决方法
在那里建造卡洛斯:
path = "/controllername/action/whatever" c_name = ActionController::Routing::Routes.recognize_path(path)[:controller] controllerClass = "#{c_name}_controller".camelize.constantize.new 将为您提供控制器类的新实例. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |