html - Template toolkit FOR and IF behavior -


i experiencing weird behavior template toolkit, have data structure (defined in perl , passed parameter):

( { flag => 1, => data}, { => data}, etc ) 

and in template have loop like

[for items]   [if (flag) ]       [else]     else   [end] [end] 

the template seems never enter else, way can enter else change data:

( { flag => 1, => data}, { flag => 0, => data}, etc ) 

so evaluates false. if change data structure to

( { => data}, { => data}, etc ) 

it enters else (because evaluates undef false).

it seems if there 'bleed over' of variables remaining in scope next iteration unless overwritten, expected behavior? , if documented anywhere?

edit: later on found different issue causing above behavior, due me using "elseif" , not correct "elsif" elsewhere in template. if in doubt check out solution proposed jira solved problem described in origional post.

you can modify template below assigning loop variable named hash. behave expect.

[%foreach item in items%]    [%if item.flag %]       [%else%]     else   [%end%]  [%end%] 

Comments

Popular posts from this blog

asp.net - repeatedly call AddImageUrl(url) to assemble pdf document -

java - Android recognize cell phone with keyboard or not? -

iphone - How would you achieve a LED Scrolling effect? -