sailfish:实践指南
实际评估sailfish时,我先确认它解决的具体问题:Rust 的简单、小型且极快的模板引擎。实际做日常自动化时,经常会碰到输入边界、依赖和失败处理如果不清楚就很难稳定复用,所以功能列表并不能代替验证。我建议用一项范围明确的真实任务完成最小试跑,重点记录配置时间、输出质量、异常信息和维护痕迹,再与现有方案比较。我的判断是,它更适合愿意先做小范围验证并复查原始文档的团队;若眼下没有这类需求,先保留观察即可。
Rust 的简单、小型且极快的模板引擎
用户指南 | API 文档 | 示例
✨ 特点
- 简单直观的语法灵感来自 EJS
- 在模板中包含另一个模板文件
- 内置过滤器
- 最小的依赖性(总共 <15 个 crate)
- 速度极快(参见 基准测试)
- 更好的错误消息
- 语法高亮支持(vscode、vim)
- 适用于 Rust 1.89 或更高版本
示例
依赖项:
[dependencies]
sailfish = "0.11.3"
您可以选择使用 TemplateSimple 直接访问字段:
模板文件(templates/hello.stpl):
`` erb
<% for msg in messages { %> <%= msg %> <% } %>代码:
``生锈 使用旗鱼::TemplateSimple;
#[derive(TemplateSimple)] #[template(path = "hello.stpl")] 结构 HelloTemplate { 消息:Vec
} fn 主() { 让 ctx = HelloTemplate { messages: vec![String::from("foo"), String::from("bar")], }; println!("{}", ctx.render_once().unwrap()); }
Or use the more powerful Template/TemplateMut/TemplateOnce:
Template file (templates/hello.stpl):
<html> <body> <% for msg in &self.messages { %> <%= msg %> <% } %> <%= self.say_hello() %> </body> </html>Code:
use sailfish::Template; #[derive(Template)] #[template(path = "hello.stpl")] struct HelloTemplate { messages: Vec<String> } impl HelloTemplate { fn say_hello(&self) -> String { String::from("Hello!") } } fn main() { let ctx = HelloTemplate { messages: vec![String::from("foo"), String::from("bar")], }; println!("{}", ctx.render().unwrap()); }
You can find more examples in examples directory.
路线图
Template特征(RFC)- 模板继承(块、部分等)
表达你的支持
如果这个项目对您有帮助,请给个⭐!
文档部署说明
sudo apt install mkdocs mkdocs-material
cd sailfish_root_folder &&
cd docs && cd en
mkdocs build
-
09.11
WorkflowEngine.NET:实践指南
-
09.11
DartTutorial:实践指南
-
09.11
PseudoMakeMeKeyCapProfiles:实践指南
-
09.11
BlogEngine.NET:实践指南
-
09.11
kazoo:实践指南
-
09.11
moodleapp:实践指南
-
- ffmpeg-concat:实践指南
- 09.11
-
- FreeRedis:实践指南
- 09.11
-
- transform:实践指南
- 09.11
-
- BPL:实践指南
- 09.11
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏