New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
map() filter returns string "<generator object do_map at 0x10bd730>" #288
Comments
This is not a bug. Are you trying to output JSON? |
Yes, my expectation was that map() returns a list. And that is not a bug? So that means map() shall only be used as an intermediate function with some other filter like |join or |list appended to it? Hmmm. Maybe that should be stated explicitly in the documentation. |
You shouldn't just print out the |
The fact that the |
Also, i don't see anywhere in the Jinja docs which implies that |
I don't want to change this as this would cause performance of these functions to do down which normally are only used with iteration. |
I didn't know about the Thanks for filing this! |
Let zonelist be a data structure like this:
When using zonelist|map(attribute='file'), a string like this is returned:
Expected behaviour would be to return a list containing the 'file' attributes of zonelist.
As it turns out there's a workaround: Using e.g. zonelist|map(attribute='file')|list or zonelist|map(attribute='file')|sort will result in the expected list:
I'm using Jinja 2.7.1 with Ansible 1.4.3.
The text was updated successfully, but these errors were encountered: