封装jinja2模板方法:
参数说明:
template_file :jinja2模板文件
*args,**kwargs:传入的变量名必须与模板中的变量名一致。
import jinja2,os
basedir=os.path.abspath(os.path.dirname(__file__))
def render_conf(template_file,*args,**kwargs):
'''根据对应的模板生成配置,对于模板中的dict类型必须传值或者传递空字典,否则会报错;对于list类型可以缺省'''
env = jinja2.Environment(loader=jinja2.FileSystemLoader(basedir))
#'template/'这个是相对路径
template = env.get_template(f'template/{template_file}')
temp_out = template.render(*args,**kwargs)
return temp_out