【发布时间】:2013-11-02 14:27:51
【问题描述】:
我希望这会被标记为重复,但我已经搜索和搜索,找不到任何相似的问题,更不用说答案了。当 Mojolicious 模板出错时,您会得到一个显示所有会话数据的页面。
为了调试,我创建了一个包含故意错误的“转储”页面,但这似乎效率低下。是否有一种简单的方法(如已定义的帮助程序)将相同格式正确的信息附加到我正在调试的页面?
【问题讨论】:
标签: perl mojolicious
我希望这会被标记为重复,但我已经搜索和搜索,找不到任何相似的问题,更不用说答案了。当 Mojolicious 模板出错时,您会得到一个显示所有会话数据的页面。
为了调试,我创建了一个包含故意错误的“转储”页面,但这似乎效率低下。是否有一种简单的方法(如已定义的帮助程序)将相同格式正确的信息附加到我正在调试的页面?
【问题讨论】:
标签: perl mojolicious
您不必为此加载 Data::Dumper。内置助手之一是 Data::Dumper。
% if ($debug_mode) { dumper $session; }
或具体值:
% if ($debug_mode) { dumper $session->some_value; }
【讨论】:
您可以调用render_exception(这是抛出错误的作用)而不是抛出错误,但这也不是最好的主意。您应该尝试使用 tempire 出色的 Mojolicious::Plugin::ConsoleLogger,它将您可能想要的所有信息发送到浏览器的 javascript 控制台。
【讨论】:
您的意思是像 HTML 模板这样的页面吗?您可以将其插入到任何模板上的任何位置的 HTML 注释中:
% if ($debug_mode) {
% my $session_dump = Data::Dumper::Dumper($self->session);
<!-- session data is: <%= $session_dump %> -->
% }
然后在您要检查会话数据时查看页面源。
【讨论】: