Я хотел бы попросить о помощи.
Я бы хотел, чтобы скрипт автоматически загружал имена шаблонов в папку и генерировал файлы с тем же именем, что и шаблон.
Я написал код:
from jinja2 import Environment, FileSystemLoader
import yaml
import os
for file in os.listdir('configs'):
#Load data
data = {}
data.update(yaml.load(open('./configs/' + file)))
#Load Jinja2 template
env = Environment(loader = FileSystemLoader('./templates'), trim_blocks=True, lstrip_blocks=True)
template = env.get_template('cp-serwis.properties')
templateHibernate = env.get_template('hibernate.properties')
#Render the template with data
output_from_parsed_template = template.render(data)
output_from_parsed_templateHibernate = templateHibernate.render(data)
#Create directory
os.makedirs(name=data['_dir'], exist_ok=True)
#Write to file
with open(data['_dir'] + '\cp-serwis.properties', 'w') as fh:
fh.write(output_from_parsed_template)
with open(data['_dir'] + '\hibernate.properties', 'w') as fh:
fh.write(output_from_parsed_templateHibernate)
Интересно, как перебирать файлы, что-то вроде этого:
#Load Jinja2 template
env = Environment(loader = FileSystemLoader('./templates'), trim_blocks=True, lstrip_blocks=True)
template = env.get_template(*)
with open(data['_dir'] + '\*', 'w') as fh:
fh.write(output_from_parsed_template)
, чтобы он автоматически извлекал имена шаблонов в папке и генерировал файлы с тем же именем, что и шаблон.
Буду благодарен за вашу помощь.