Переменная Mulitiline в jinja2 - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь прочитать / сохранить многострочную переменную в jinja2. Однако, это не очень хорошо анализируется, и я получаю много разрывов и пробелов между персонажем. Было бы неплохо, если бы ча получил подсказку, как ее решить. Код выглядит так:

>    certificate: |-
>{% for line in certificate %}
>          {{ line }}
>{% endfor %}
>
>{% if destinationCACertificate is defined %}
>        destinationCACertificate: |-
>{% for line in destinationCACertificate %}
>          {{ line }}
>{% endfor %}
>{% endif %}

Я хочу получить что-то вроде этого:

certificate: |-
      -----BEGIN CERTIFICATE-----
      MIIM1TCCCr2gAwIBAgITGAAAH6w6I7/Kn4g5bwAAAAAfrDANBgkqhkiG9w0BAQsF
      ADBtMQswCQYDVQQGEwJERTEaMBgGA1UEBwwRRnJhbmtmdXJ0IGFtIE1haW4xFzAV

1 Ответ

0 голосов
/ 09 мая 2018

Строка здесь рассматривается как символ. Должна быть добавлена ​​функция split, сообщающая jinja, что нужно рассмотреть строку, пока она не находит разрыв ('\ n').

Так должно быть что-то вроде:

 certificate: |-
    >    {% for line in certificate.split('\n') %}
    >    {{ line }}
    >    {% endfor %}
    >    {% endif %}
    >    {% if destinationCACertificate is defined %}
    >    destinationCACertificate: |-
    >    {% for line in destinationCACertificate.split('\n') %}
    >    {{ line }}
    >    {% endfor %}
    >    {% endif %}
...