我正在使用jinja2动态创建一个乳胶文档。我是jinja2及其语法的新手。我在python文件中使用这个jinja env:
latex_jinja_env = jinja2.Environment(
block_start_string = '((*',
block_end_string = '*))',
variable_start_string = '(((',
variable_end_string = ')))',
comment_start_string = '((=',
comment_end_string = '=))',
loader = jinja2.FileSystemLoader(os.path.abspath('.'))
)
if __name__ == '__main__':
template = latex_jinja_env.get_template('template.tex') # pass in the template file
render_template = template.render(blocks = blocks, **options) # pass in all jinja vars as a big dictionary
print render_template
在template.tex文件中我有这种情况:
((( var1 ))) ( ((( var2 ))) ) other text...
var1
可以替换为带有整数的big
或small
,var2
字符串。我希望var2
仅在var1
获得值small
时才会被替换。怎么能把它翻译成jinja2?谢谢
答案 0 :(得分:0)
只是一个简单的if语句(使用latex_jinja_env var中定义的语法)完成工作:
((( var1 )))
((* if block13_var1 == "small" *))
( ((( var2 ))) )
((* endif *))