如何查看哪些rails控制器/型号正在为页面提供服务?

Pau*_*lan 8 ruby ruby-on-rails ruby-on-rails-3

这可能是一个有点奇怪的问题,但我想知道是否有人知道Rails快捷方式/系统变量或某些东西可以让我跟踪哪个控制器正在为一个页面服务以及该控制器调用哪个模型.显然我正在构建应用程序,所以我知道,但我想制作一个更通用的插件,能够追溯获取这些数据,而无需手动完成.

这有什么简单的快捷方式吗?

tad*_*man 8

控制器和动作中定义paramsparams[:controller]params[:action],但没有占位符的"模式"为控制器方法可以创建模型的多个实例.

如果需要,您可能需要创建某种辅助方法来提供帮助:

def request_controller
  params[:controller]
end

def request_action
  params[:action]
end

def request_model
  @request_model
end

def request_model=(value)
  @request_model = value
end
Run Code Online (Sandbox Code Playgroud)

在处理请求时,您必须在加载模型时显式设置模型:

@user = User.find(params[:id])

self.request_model = @user
Run Code Online (Sandbox Code Playgroud)


jay*_*del 7

我知道有很多方法:

首先,您可以rake routes查看路线列表.

其次,您可以放入<%= "#{controller_name}/#{action_name}" %>application.html.erb并查看视图以查看其内容.如果你把它放在最底部,你将始终在页面底部获得该信息.