2016-04-01 8 views
0

で複数の値を交換し、私はJinja2の中の変数があります:TEST1 =「これはVALUE1があるが、これは値2である」とJinja2の

{{ test1 | replace("value1","my_value1") }} 

私はVALUE1を置き換えることができますが、私はまた、値2を交換する必要がありますこれどうやってするの?

私が試した:

{{ test1 | replace("value1","my_value1") | replace("value2","my_value2") }} 

をしかし、これはのみ値2を置き換えます。

+1

正に、変数を渡す前に神社へ。 – John

+0

@John私はJinjaの前にこれをすることはできません。 – user3605780

答えて

1

あなたの表現はうまくいくようです。

>>> output = t.render(test1="this has both value1 and value2") 

I:対象の置換文字列の両方 が含まれて、その後

>>> import jinja2 
>>> t = jinja2.Template('{{ test1 | replace("value1","my_value1") | replace("value2","my_value2") }}') 

そして、それをレンダリングし、test1に値を渡す:私は であなたの質問からJinja2の式をテンプレートを作成した場合両方の値が置換された文字列を取得します。

>>> print (output) 
this has both my_value1 and my_value2 
>>> 
+0

私はどこかでタイプミスをしたに違いないと思う。ありがとう! – user3605780