2017-09-11 4 views
0

내가 말하는 오류가 계속 '}'가지고 :전달 VAR는 TemplateSyntaxError를 HTML로 : 토큰 예상 ':',

TemplateSyntaxError: expected token ':', got '}'. 

내가 하나의 괄호와 대괄호없이 {{session['guess']}} 이중 브라켓을 변경하려고했습니다 둘 다 작동하지 않습니다.

또한 {{game}}을 사용해 보았습니다. 또한 작동하지 않습니다.

{% if {{session['guess']}} == {{session['game_num']}} %} 
    <p>YOU WIN!</p> 
{% elif {{session['guess']}} > {{session['game_num']}} %} 
    <p>TOO HIGH</p> 
{% elif {{session['guess']}} < {{session['game_num']}} %} 
    <p>TOO LOW</p> 
{% endif %} 

도와주세요!

+0

'사용하여 {%를 경우 세션 [ '추측'] == [ 'game_num'] % 세션}' – Sraw

+0

오류를 수정하는, 감사합니다, 그러나 비교가 작동하지 않습니다 :( – carmensd

+0

변수를 확인하십시오.이 변수 및 다른 변수를 인쇄하려면'{{session [ "guess"]}}''if' 블록을 사용하지 마십시오. – Sraw

답변

2

파이썬 블록 내부에서 {{or}}을 사용하지 말고 {% %}를 사용하여 값에 액세스하십시오. {% %}에는 항상 일반 파이썬 코드가 포함되어야합니다. jinja2 온라인 편집자에게 here

{% if session['guess'] == session['game_num'] %} 
     <p>YOU WIN!</p> 
{% elif session['guess'] > session['game_num'] %} 
     <p>TOO HIGH</p> 
{% elif session['guess'] < session['game_num'] %} 
     <p>TOO LOW</p> 
{% endif %}