py.lib.aw_web_tools
12:1e2c40d95710 Browse Files
.. 1.202503.4 + Режим разработки для шаблонов
setup.py src/aw_web_tools/simple_template_helper.py
1.1 --- a/setup.py Sun Mar 02 15:58:06 2025 +0300 1.2 +++ b/setup.py Sun Mar 09 11:39:38 2025 +0300 1.3 @@ -2,7 +2,7 @@ 1.4 1.5 setup( 1.6 name='aw_web_tools', 1.7 - version='1.202503.3', 1.8 + version='1.202503.4', 1.9 packages=['aw_web_tools'], 1.10 package_dir={'aw_web_tools': 'src/aw_web_tools'}, 1.11 description='Инструментарий для Web-разработки'
2.1 --- a/src/aw_web_tools/simple_template_helper.py Sun Mar 02 15:58:06 2025 +0300 2.2 +++ b/src/aw_web_tools/simple_template_helper.py Sun Mar 09 11:39:38 2025 +0300 2.3 @@ -14,9 +14,11 @@ 2.4 2.5 2.6 class SimpleTmplWrapper(object): 2.7 - def __init__(self, file_name: str, **static_params): 2.8 + def __init__(self, file_name: str, devel_mode: bool = False, **static_params): 2.9 """ 2.10 :param file_name: Имя файла шаблона, по которому его сможет отыскать класс ``SimpleTemplate`` 2.11 + :param devel_mode: Режим разработки. Полезен когда шаблон постоянно изменяется в процессе работы над ним 2.12 + и при каждом ответе его следует перечитывать 2.13 :param static_params: Параметры, добавляемые в шаблон страницы при каждой генерации 2.14 """ 2.15 try: 2.16 @@ -26,10 +28,11 @@ 2.17 raise ValueError(f'Ошибка в инициализации шаблона: {e}') 2.18 2.19 self.static_params = static_params 2.20 + self.devel_mode = devel_mode 2.21 2.22 def __call__(self, **params): 2.23 """\ 2.24 - Сгенерировать страницу по шаблону, обёткой которого является этот класс 2.25 + Сгенерировать страницу по шаблону, обёрткой которого является этот класс 2.26 2.27 :param params: Параметры шаблона, которые обновляют заданные при инициализации класса параметры и передаются 2.28 в метод ``SimpleTemplate.render()`` через параметры ключ-значение. 2.29 @@ -37,6 +40,9 @@ 2.30 """ 2.31 kw_params = self.static_params.copy() 2.32 kw_params.update(params) 2.33 + if self.devel_mode: 2.34 + self.tmpl.prepare() 2.35 + 2.36 return self.tmpl.render(**kw_params) 2.37 2.38 @staticmethod