mirror of
https://github.com/letian1650/N3RD.git
synced 2025-01-24 11:25:14 +08:00
27 lines
732 B
Python
27 lines
732 B
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
# File : render.py
|
|
# Author: DaShenHan&道长-----先苦后甜,任凭晚风拂柳颜------
|
|
# Date : 2023/4/19
|
|
|
|
import re
|
|
from jinja2 import Environment, Template
|
|
|
|
|
|
def to_lower_camel_case(x):
|
|
"""转小驼峰法命名:下划线转驼峰且首字母小写"""
|
|
s = re.sub('_([a-zA-Z])', lambda m: (m.group(1).upper()), x)
|
|
return s[0].lower() + s[1:]
|
|
|
|
|
|
def render_template_string(source: str, **context):
|
|
# 构造环境
|
|
env = Environment()
|
|
# 添加一个过滤器
|
|
env.filters['to_lower_camel_case'] = to_lower_camel_case
|
|
# 获取模板
|
|
template: Template = env.from_string(source)
|
|
# 渲染
|
|
view = template.render(**context)
|
|
return view
|