2014-09-23 95 views
0

我从教程中知道,<%= controller.controller_name %>打印出控制器名称。调试(了解)什么是控制器

现在我弄清楚,如何dindrp在controller所有隐藏的信息。

我试着用

<%= debug(controller.instance_methods.to_yaml) if Rails.env.development? %> 
<%= debug(controller.to_yaml) if Rails.env.development? %> 

或与每个,但没有任何工程。请教我(不使用宝石)如何看到所有好的信息。

+0

尝试'methods',而不是'instance_methods' – Santhosh 2014-09-23 15:27:11

+0

THX,帮助我。你能否向我解释他们之间的差异? – AdvanceInBeginning 2014-09-24 08:00:38

回答

1

使用Object#methods得到一个对象

controller.methods 

Module#intance_methods是一个类方法的所有方法,所以你应该使用类调用它。

controller.class.instance_methods 

你可以通过false不包括继承的方法

controller.class.instance_methods(false) 
0

虽然我不是很了解你的问题,这是你想要的吗?

<%= debug(params) if Rails.env.development? %>