No one?

On Wednesday, February 20, 2019 at 3:33:40 PM UTC+1, Igor Stojnov wrote:
>
> Hello all,
>
> How can I properly use FOR loop, and then condition next action - based on 
> IF and AND - to check that target property is defined, is not empty and it 
> doesn't contain certain strings? I am especially interested in the latter.
>
> For instance:
>
> {% *for ci* in netboxResult.json.results if *ci.name <http://ci.name>* is 
> defined and *ci.name <http://ci.name>* is not none.... and *ci.name 
> <http://ci.name>* *"does not contain ___"* and *ci.name <http://ci.name>* 
> *"does 
> not contain ___"* and *ci.name <http://ci.name>* *"does not contain ___"*... 
> -%}
>
> Feel free to chime in at any time. :-) Thanks!
>
>
> Regards,
> Igor
>
> On Monday, February 18, 2019 at 1:51:30 PM UTC+1, Igor Stojnov wrote:
>>
>> Hello all,
>>
>> I am a noob in using Jinja trying to quickly adapt an existing template, 
>> so please bear with me. :-)
>>
>> Namely, the template is supposed to do the following:
>>
>>
>>    1. for each *ci* item (taken from a result in JSON format) which have 
>>    a *name* defined and which is *not none*
>>    2. set certain custom fields based on certain parameters
>>    3. convert to JSON
>>
>> The template is below:
>>
>> {% *for ci* in netboxResult.json.results if *ci.name <http://ci.name>* 
>> is defined and *ci.name <http://ci.name>* is not none -%}
>> { "index": { "_index": "{{ item.index }}", "_id": "{{ ci.name }}", 
>> "_type": "document" } }
>> {# Formatting IP addresses #}
>> {% if ci.custom_fields.ipAddresses is defined and 
>> ci.custom_fields.ipAddresses is not none %}{% set ips = 
>> ci.custom_fields.ipAddresses.split(',') %}{% elif 
>> ci.custom_fields.vmIpAddresses is defined and 
>> ci.custom_fields.vmIpAddresses is not none %}{% set ips = 
>> ci.custom_fields.vmIpAddresses.split(',') %}{% else %}{% set ips = [] %}{% 
>> endif %}
>> {% if ci.custom_fields.environment is defined %}
>> { "status": {{ ci.status.label | to_json }}, "environment": {{ 
>> ci.custom_fields.environment.label | default(None) | to_json }} }
>> {% elif ci.custom_fields.vmEnvironment is defined %}
>> { "status": {{ ci.status.label | to_json }}, "environment": {{ 
>> ci.custom_fields.vmEnvironment.label | default(None) | to_json }} }
>> {% endif %}
>> {% endfor %}
>>
>>
>> What I'd like to do is introduce *additional conditions* for the CI name 
>> - they should not contain the following strings: PDU, shelf, 009, OPTIC, 
>> FUSION, PatchPanel.
>>
>> I've tried a few simple tricks, like adding under "*% for ci*" a few 
>> more conditions for the name - but for some reason it didn't change 
>> anything. The output remained the same. I am a bit confused with the ending 
>> of the FOR with "*-%}*".
>>
>> If someone can help me get me on my way, it would be amazing!
>>
>> Thanks in advance!
>>
>> Regards,
>> Igor
>>
>>
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"pocoo-libs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pocoo-libs+unsubscr...@googlegroups.com.
To post to this group, send email to pocoo-libs@googlegroups.com.
Visit this group at https://groups.google.com/group/pocoo-libs.
For more options, visit https://groups.google.com/d/optout.

Reply via email to