elbie has asked for the wisdom of the Perl Monks concerning the following question:
Using the process method in the Template Toolkit, I often want to call a subroutine with arguments, as follows:
$some_var = 'Hello world!'; $my_templ->process( "$TEMPLATE_DIR/hello_world.html", { 'filler' => \&some_sub( $some_var ) } );
But when I do that, I get ARRAY(0x84ab2c30) or similar where the replacement happens in the output.
Typically, I've been getting around this by calling the subroutine beforehand:
but I'd like to avoid this if I can. What is the "proper" way to pass variables?$some_var = &some_sub( 'Hello world!' ); $my_templ->process( "$TEMPLATE_DIR/hello_world.html", { 'filler' => $some_var } );
elbieelbieelbie
Back to
Seekers of Perl Wisdom