Ruby on rails <;%=调试(控制器)%>;产生不可读的输出
在我的一个模板中,我想使用debug()帮助器仔细查看控制器对象 据说可以产生适合HTML输出的YAML 然而,运行不会产生任何我称之为可读的东西 首先是:Ruby on rails <;%=调试(控制器)%>;产生不可读的输出,ruby-on-rails,ruby,debugging,Ruby On Rails,Ruby,Debugging,在我的一个模板中,我想使用debug()帮助器仔细查看控制器对象 据说可以产生适合HTML输出的YAML 然而,运行不会产生任何我称之为可读的东西 首先是: #<ClubsController:0x104467378 @_request=#<ActionController::Request:0x104467648 @accepts=[#<Mime::Type:0x101f50f30 @synonyms=["application/xhtml+xml"], 有什么是不可读的?
#<ClubsController:0x104467378 @_request=#<ActionController::Request:0x104467648 @accepts=[#<Mime::Type:0x101f50f30 @synonyms=["application/xhtml+xml"],
有什么是不可读的?这是标准的ruby检查语法。。。如果您真的需要“更具可读性”的东西,那么您必须在控制器上编写一个方法(很可能是暂时的),该方法只是以另一种格式公开它的实例变量
如果您注意到您希望在控制器实例中看到的内容,可能会有所帮助。有什么是不可读的?这是标准的ruby检查语法。。。如果您真的需要“更具可读性”的东西,那么您必须在控制器上编写一个方法(很可能是暂时的),该方法只是以另一种格式公开它的实例变量
如果您注意到希望在控制器实例中看到的内容,可能会有所帮助。调试帮助程序主要用于提供
to_yaml
实现的对象(例如ActiveRecord模型)。如果传递的对象没有响应到\u yaml
(在您的示例中传递控制器对象的情况就是如此)然后,debug
为您提供对该对象调用inspect
的结果。调试帮助程序主要用于为_yaml提供实现的对象(如ActiveRecord模型)。如果传递的对象没有响应to_yaml
(就像在您的示例中传递控制器对象一样),则debug
会给出调用该对象的inspect
的结果。我看到您的注释@thenduks-answer
实际上有一种方法:
controller.controller_name
返回控制器的名称。我看到了您的评论@thenduks答案
实际上有一种方法:
controller.controller_name
返回控制器名称。我想在操作名称旁边显示当前控制器名称。action名称在controller.action\u name中可用,所以我想我可以使用debug()查看是否可以在控制器中找到保存该名称的属性。那么问题出在哪里?查看该输出(或者更好的是,查看ActionController文档)以查找正确的方法名称,然后只需执行
和
或其他任何操作即可。我想在操作名称旁边显示当前控制器名称。action名称在controller.action\u name中可用,所以我想我可以使用debug()查看是否可以在控制器中找到保存该名称的属性。那么问题出在哪里?查看该输出(或者更好的是,通过ActionController文档)以查找正确的方法名称,然后只需执行
和
或其他任何操作即可。谢谢。正是我想要的。刚刚在文档中找到了关于它的页面。谢谢。正是我想要的。刚刚在文档中找到了关于它的页面。