<%= debug(controller)%>产生不可读的输出

时间:2010-01-06 14:44:04

标签: ruby-on-rails ruby debugging

在我的一个模板中,我想使用debug()帮助程序仔细查看控制器对象。

据说可以生成适合HTML输出的YAML。

正在运行<%= debug(controller)%>但是,不会产生任何我称之为可读的东西。

首先是:

#<ClubsController:0x104467378 @_request=#<ActionController::Request:0x104467648 @accepts=[#<Mime::Type:0x101f50f30 @synonyms=["application/xhtml+xml"],

继续这样......

有关如何获取有关该对象的信息的任何想法?

3 个答案:

答案 0 :(得分:2)

debug帮助程序主要用于提供to_yaml实现的对象(例如ActiveRecord模型)。如果传递的对象没有响应to_yaml(在示例中传递控制器对象的情况),那么debug会为您提供在该对象上调用inspect的结果。< / p>

答案 1 :(得分:1)

我看到你的评论@thenduks回答。

实际上有一种方法:

controller.controller_name

返回控制器的名称。

答案 2 :(得分:0)

有什么不可读的?这是标准的ruby检查语法......如果你真的需要“更具可读性”的东西,那么你必须在你的控制器上编写一个方法(暂时,很可能),它只是以另一种格式公开它的实例变量。

如果您在控制器实例中注意到想要查看的内容,也许会有所帮助。