I personally have modified the Iterator.pm
sub new {
my $class = shift;
my $data = shift || [ ];
my $params = shift || { };
if (ref $data eq 'HASH') {
# map a hash into a list of { key => ???, value => ??? } hashes,
# one for each key, sorted by keys
$data = [ map { { key => $_, value => $data->{ $_ } } }
sort keys %$data ];
}
elsif (UNIVERSAL::can($data, 'as_list')) {
# if (UNIVERSAL::can($data, 'as_list')) {
$data = $data->as_list();
}
elsif (ref $data ne 'ARRAY') {
# coerce any non-list data into an array reference
$data = [ $data ] ;
}
bless {
_DATA => $data,
_ERROR => '',
}, $class;
}
to sub new {
my $class = shift;
my $data = shift || [ ];
my $params = shift || { };
if (UNIVERSAL::can($data, 'as_list')) {
# if (UNIVERSAL::can($data, 'as_list')) {
$data = $data->as_list();
}
elsif (ref $data ne 'ARRAY') {
# coerce any non-list data into an array reference
$data = [ $data ] ;
}
bless {
_DATA => $data,
_ERROR => '',
}, $class;
}
This solved my problem correctly, if i iterate over a sible element it
will iterate over a list of single element
Greets
_______________________________________________
templates mailing list
[email protected]
http://lists.template-toolkit.org/mailman/listinfo/templates