我有一段代码使用CGI::Application
作为它的基础,但是某些功能无法正常工作。CGI ::应用程序参数()未设置
当我尝试通过$Template->param()
设置某些东西时,它似乎没有设置。 $Template
等于$self->load_tmpl($template);
而且这块我要救的是:
$Template->param('symbols' => \%a_hash_ref);
我知道\%a_hash_ref
包含预期值。它有一个类似的形式:
{'symbol' => 'DTX'},{'symbol' => 'QFLD'}
而且,如果我做
$Template->param('Hey!xD' => 'Something');
它不保存,但
$Template->param($Pagination);
确实,这里$Pagination
也是hash_ref。
我知道所有的值都是他们应该是的,我也尝试了一些简单的字符串,这应该工作,但他们没有设置。我知道,当我跑这是因为:
my @params = $Template->param();
die Dumper \@params;
它输出它应该已经建立了所有的变量,但所预计的(包括'Hey!xD'
字符串)失踪。我也知道它实际上运行的代码,因为这个模具翻斗车是我尝试设置值后。
模板文件包含这段代码:
$(文件)。就绪(函数(){mainFunction( '[%符号%]'); });
任何帮助,将不胜感激。
编辑:
这就是被给予PARAM:
[ { '日期'=> '2006-07-05', 'avg_gain'=>是undef , 'bollinger_mid'=> '32 0.80000' , '符号'=> 'BBQ' },{ '日期'=> '2006-04-04', 'avg_gain'=>是undef, “bollinger_mid '=> '34 .55656', '符号'=> 'AAPL' } ... ]
是的,我把它设置为0!谢谢!如果在尝试设置模板中尚不存在的参数时它会死掉,那么我该如何设置该参数呢? 我阅读文档,我不明白为什么$ Template-> param('symbols')不存在。在我的模板中,我有这个: fetchQuoteData('[%symbol%]'); < /TMPL_LOOP> –
Sismetic
嗨,我从文档中添加了一些'TMPL_LOOP'信息,可能有所帮助。 – wes
当然,非常感谢您的帮助。我显然发送了hashref的arrayref。我将代码编辑为 – Sismetic