Jinja2 템플리트를 변수를 설정할 수 없으면 객체에는 기본값입니다
기본적으로 " jijna2 만드는 방법을 변수로 "; 만약 이런 일을 대신 객체인지 없음?
{% if p %}
{{ p.User['first_name']}}
{% else %}
NONE
{%endif %}
만일 내가 원하는 값을 기본값으로 객체에는 되니그들 p 는 p (first_name 및 last_name 님) 를 " ";). 기본적으로 노블 (퍼시우저 [first_name& # 39,], " ";)
받는 중 오류가 발생했습니다. 오류: jinja2.exceptions.UndefinedError 우네핀더로: # 39, & # 39 None&. # 39, & # 39 주님으로부터그에게 속성용 User&.
119
9
내장 함수를 사용하여 '없음' (http://jinja.pocoo.org/docs/templates/ # 없음).
또는
또는 필요한 경우 빈 문자열:
그냥 따르면 [docs] [1] 할 수 있습니다.
이로 인해 '없음' 을 '거짓' 의 방송 부울입니다 컨텍스트입니다.
[1]: http://jinja.pocoo.org/docs/dev/templates/ # 기본
또 다른 답변을 한 것으로, 다음과 같은 경우 되니그들 가변입니다 무언가 쓸 수 있습니다.
다음과 같은 [이 doc] (http://jinja.pocoo.org/docs/templates/ # 내장 필터링합니다.) 이 이쪽요 할 수 있습니다.
한 동안 것을 피하기 위해 idfsysobject. " p"; 또는 " p.User"; 없음 (none) 으로 사용할 수 있습니다.
또 다른 예를 솔루션 (사람이었는가부텀 일부 이전 비슷한 수준들과): "' {{(p 정의되고, p. 사용자 정의 및 p. 사용자 [# 39, & # 39 first_name&;] 기본 (,, 참 " none")}}) "'
참고 마지막 변수 (퍼시우저 [# 39, & # 39 first_name&,]) 테스트 후 '정의' 가 없는 경우.
난 보통 정의하는 '및' 글로벌 '와' 필터링합니다 노블 '기능을 넣어'.
사용 템플리트를:
그냥 vmware. 안시블 2.8, 사용할 수 있습니다.
"' {{p. 사용자 [# 39, & # 39 first_name&;] }} "'
값이 정의되지 않은 진자 참조 https://docs.ansible.com/ansible/latest/porting_guides/porting_guide_2.8.html