所以我用来查看变量内容的方法是在我的模板工具包中使用Data :: Dumper:
[% USE Dumper %] [% Dumper.dump(varname) %]
但是我得到的结果有点乱 - 关于表关系,列类型和attrbitues等的所有信息。
我想知道是否有办法获得'干净'的变量内容 - 因为只有查询的当前结果+相关的结果集(即当我使用带有cakephp框架的php时,有一个'debug(varname) )''提供了这样一个结果的命令,看起来像http://pastebin.com/Hut0LnAb}。
答案 0 :(得分:9)
Data::Printer救援! 它的对象转储更易于阅读:
my $obj = SomeClass->new;
p($obj);
# produces:
\ SomeClass {
Parents Moose::Object
Linear @ISA SomeClass, Moose::Object
public methods (3) : bar, foo, meta
private methods (0)
internals: {
_something => 42,
}
}
它与Template Toolkit兼容:
[% USE DataPrinter %]
html-formatted, colored dump of the same data structure:
[% DataPrinter.dump_html( myvar ) %]
它“知道”如何处理DBIx :: Class:
use Data::Printer
filters => {
-external => [qw[DB]], # use DB filter
}, class => {
expand => 2, # traverse object 2-levels deep
linear_isa => 0, # hide not-so-relevant information
};
...
my $obj = $schema
->resultset('AddressState')
->search({}, { prefetch => [qw[country]] })
->single;
p $obj;
答案 1 :(得分:0)
你可以使用
[% Dumper.dump_html(variable) %]
请参阅: http://template-toolkit.org/docs/modules/Template/Plugin/Dumper.html