in reply to
HTML-Template - Array of Hash
I don't know if this is possible in
HTML::Template without passing manipulated parameters. For simplicity, I would just go over the @AoHcurrent array and add the value from the @AoHprevious in perl and then pass it to HTML::Template.
You *can* do this in
HTML::Template::Compiled via expressions, but the syntax is not very nice:
my $htc = HTML::Template::Compiled->new(
filename => "test.html",
use_expressions => 1,
tagstyle => [qw/ +tt /],
loop_context_vars => 1,
);
$htc->param(
current => \@AoHcurrent,
previous => \@AoHprevious,
);
template:
NODE LINK VALUE
---------------------
[%loop current %]
[%= node %] [%= link %] [%= value %] ([%= expr=".previous[__index__]
+{'value'}" %])
[%/loop current %]
With
.previous you tell it to go to the root of the parameter stash and the key "previous", with
[__index__] you refer to the element number __index__ (the current index in the loop) and
{'value'} then gets the hash element for the key 'value'. note that this is not perl syntax, just similar.
You need HTML::Template::Compiled 0.97 or newer for this.