随笔分类 -  模板引擎

fsspec jinaj2 loader 简单说明
摘要:为了方便使用,我简单提取了jinja2 fspsec loader 的代码,开发成为一个pip 包,方便使用 代码 fsspec_loader.py from __future__ import annotations import pathlib from typing import TYPE_C 阅读全文

posted @ 2024-10-15 06:57 荣锋亮 阅读(11) 评论(0) 推荐(0) 编辑

prompt-poet 参考使用
摘要:主要是一个简单的功能体验,包含了include 以及简单的jinja2 逻辑判断 模版定义 app.yaml.j2 {% include 'system_instruction.yml.j2' %} - name: system demo role: system content: | you ar 阅读全文

posted @ 2024-09-29 17:03 荣锋亮 阅读(22) 评论(0) 推荐(0) 编辑

jinja2 通过添加自定义parser实现macro的名称调整
摘要:实际上是dbt 在设计macro 中的一个技巧,比较有意思,对于系统或者三方包开发的macro 添加自己prefix 比如,原始macro name 为dremio__alter_column_type dbt 会将解析的macro 添加一个dbt_macro__的前缀为 dbt_macro__dr 阅读全文

posted @ 2024-04-14 06:46 荣锋亮 阅读(21) 评论(0) 推荐(0) 编辑

jinja2 实现return macro
摘要:设计上来自dbt 的return macro, 实际上就是一个macro 会触发一个exception 我们对于这个exception 单独捕获处理下 returnmacro 函数开发 return_macro 函数定义 def return_macro(values): raise MacroRe 阅读全文

posted @ 2024-03-26 15:24 荣锋亮 阅读(21) 评论(0) 推荐(0) 编辑

dbt return macro 内部实现简单说明
摘要:jinja2 默认是没有return macro 的,dbt 在实现的时候比较有意思,通过一个exception 触发的,以下是简单说明 参考使用 一个包含return 的macro {% macro demoapp(name,version) %} {% if version =='v1' %} 阅读全文

posted @ 2024-03-26 15:24 荣锋亮 阅读(10) 评论(0) 推荐(0) 编辑

PebbleTemplates 模版解析处理简单说明
摘要:以下是一个简单的说明如何集成起来的,详细的可以阅读完整源码 调用 在getPebbleTemplate 部分,参考处理 private PebbleTemplate getPebbleTemplate(String templateName, Loader loader, Object cacheK 阅读全文

posted @ 2023-03-17 12:11 荣锋亮 阅读(75) 评论(0) 推荐(0) 编辑

PebbleTemplates 默认一些安全处理
摘要:PebbleTemplates 支持了不少安全控制(这个是也模版引擎普遍存在的问题) 内容转义 核心是规避xss 问题,包含了自定以及手工处理,包含了html,js,css,url_param 。。。。 方法访问的 因为模版很容易引入一些非安全方法引用,官方包含了一个方法访问校验 MethodAcc 阅读全文

posted @ 2023-03-17 12:10 荣锋亮 阅读(30) 评论(0) 推荐(0) 编辑

PebbleTemplates 一种集成玩法
摘要:PebbleTemplates 具有比较灵活的扩展性,扩展下可以做一些比较有意思的玩法 参考图 简单说明 模版官方部分基于了s3 进行存储,我们可以通过ci/cd 工具,或者利用git api 进行管理将模版存储到s3中,当然也可以自己开发相关的console api (利用s3 api)进行管理对 阅读全文

posted @ 2023-03-17 12:09 荣锋亮 阅读(44) 评论(0) 推荐(0) 编辑

PebbleTemplates 自定义tag&filter&function 开发简单说明
摘要:PebbleTemplates 的扩展能力还是很强大的,开发起来也比较方便,以下是一个简单的说明,更加复杂的推荐查看官方源码学习 filter 开发 参考代码 此filter 直接返回rongfengliang public class LoginFilter implements Filter { 阅读全文

posted @ 2023-03-16 20:14 荣锋亮 阅读(39) 评论(0) 推荐(0) 编辑

PebbleTemplates 模版引擎使用
摘要:PebbleTemplates 是一个类似jinja 的java 模版引擎(受twig启发)支持的能力还是很多的,而且扩展性很不错,比如模版资源加载,模版缓存 自定义扩展。。。。,是一个值得使用的模版引擎 一个s3 loader 参考代码 基于了minio client 通过配置指定 public 阅读全文

posted @ 2023-03-16 13:06 荣锋亮 阅读(206) 评论(0) 推荐(0) 编辑

jsonschema2pojo 基于json schema 生成代码
摘要:jsonschema2pojo 是一个很不错的基于jsonschema 生成代码的包以及工具(maven 扩展) jsonschema2pojo 特点 支持基本的jsonschema 操作 支持java扩展,比如别名,继承扩展接口 外部jsonschema 文件引用 jsr 303 注解支持 自定义 阅读全文

posted @ 2022-10-06 21:02 荣锋亮 阅读(739) 评论(0) 推荐(0) 编辑

jmte 模版引擎
摘要:jmte 是一个简单,但是高效的模版引擎,graylog 对于通知的处理就使用了此模版引擎,使用简单,而且比较灵活 参考使用 流程 创建引擎,注册类型渲染(不是必须的),使用tranform 进行渲染处理 参考代码 MyRenderDemo public class MyRenderDemo { s 阅读全文

posted @ 2022-07-24 16:05 荣锋亮 阅读(220) 评论(0) 推荐(0) 编辑

apostrophe 基于Nunjucks+mongo 的cms 系统
摘要:apostrophe的设计包含了很多模块,设计都是可扩展的(基于node 模块),灵活强大以下是一个参考的demo 项目结构 说明 官方也提供了比较完整的文档,上手起来很简单 参考资料 https://github.com/apostrophecms/apostrophe/ 阅读全文

posted @ 2021-05-16 18:12 荣锋亮 阅读(115) 评论(0) 推荐(0) 编辑

tera rust 的jinja2 模版引擎
摘要:tera 是借鉴了jinja2的rust 模版引擎,使用简单,强大 参考使用 项目结构 main.rs use tera::{Tera,Context}; fn main() { let tera = match Tera::new("templates/**/*.html") { Ok(t) => 阅读全文

posted @ 2021-05-16 17:50 荣锋亮 阅读(1175) 评论(0) 推荐(0) 编辑

liquidjs 兼容shopify liquid 的纯js 模板引擎
摘要:liquidjs 是兼容shopify liquid 的纯js 模板引擎,同时官方文档也比较完整 支持的特性 安全渲染(没有eval 以及Function 使用) shopify 兼容 零依赖 ts 支持 参考使用 app.js const { Liquid } = require('liquidj 阅读全文

posted @ 2021-05-16 10:03 荣锋亮 阅读(756) 评论(0) 推荐(0) 编辑

plop 方便的micro-generator framework
摘要:plop是一个micro-generator framework,可以用来方便的生成代码 参考使用 安装 pacakge.json { "name": "appdemo", "version": "1.0.0", "main": "index.js", "license": "MIT", "depe 阅读全文

posted @ 2021-02-19 12:25 荣锋亮 阅读(131) 评论(0) 推荐(0) 编辑

mjml nodejs 集成
摘要:mjml 支持nodejs 的集成,以下是一个简单的使用 使用typescript 项目准备 项目结构 ├── app.ts ├── index.mjml ├── package.json ├── tsconfig.json └── yarn.lock ├── app.ts ├── index.mj 阅读全文

posted @ 2019-12-29 22:21 荣锋亮 阅读(548) 评论(0) 推荐(0) 编辑

mjml强大&&灵活的邮件模版引擎
摘要:mjml 是一个邮件模版引擎,我们可以用来制作发送响应式的邮件内容,同时官方文档丰富,支持的格式多样。 以下是一个简单的试用,后边会详细学习下 安装 yarn init -y yarn add mjml yarn init -y yarn add mjml yarn init -y yarn add 阅读全文

posted @ 2019-12-29 16:25 荣锋亮 阅读(1320) 评论(0) 推荐(0) 编辑

几款不错的java表达式引擎
摘要:mvel 比较老牌了,很强大,但是好久没更新了 参考地址: http://mvel.documentnode.com/ https://github.com/mvel/mvel ScriptEngine 引擎 可以使用java 自带的ScriptEngine,基于此我们可以使用多种语言的实现,但是8 阅读全文

posted @ 2019-11-15 00:01 荣锋亮 阅读(13250) 评论(0) 推荐(1) 编辑

linux mustache bash 实现mo 做为docker容器运行动态配置工具数组的处理
摘要:前面有说过关于使用mo 工具的简单配置使用,但是实际中我们可能存在比较复杂的数据处理,比如数组,mo 可以进行数组的处理,但是在测试的过程中,一直失败,查看了官方的demo以及帮助命令发现可以通过参数 -s 引入变量文件,可以方便的注入到模版引擎中,所以通过重定向环境变量到文件,然后注入,之后删除即 阅读全文

posted @ 2019-08-07 20:38 荣锋亮 阅读(354) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示