Скрыть определение атрибута, если значение в Jinja пустое? - PullRequest
0 голосов
/ 19 июня 2020
<vcpu placement='{{cpu.placement}}' cpuset='{{cpu.cpuset}}' current={{cpu.current}}>{{ cpu['maximum'] }}</vcpu>

Учитывая, что у нас есть 3 возможных атрибута, и любой из них может быть пустым.

Есть ли удобный способ скрыть определение атрибута, если значение пусто? Скажем, если cpu.placement пуст, строки placement='' не должно быть в определении XML.

1 Ответ

1 голос
/ 19 июня 2020

Просто поместите определение атрибута внутри if -блока:

<vcpu 
  {% if cpu.placement %}placement='{{cpu.placement}}'{% endif %}
  {% if cpu.cpuset %}cpuset='{{cpu.cpuset}}'{% endif %}
  {% if cpu.current %}current={{cpu.current}}>{{ cpu['maximum'] }}{% endif %}
</vcpu>

См. список встроенных тестов , где вам нужен более сложный тест для переменной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...