Skip to content

简介

关于本文档 —— Askama非官方不完全文档

  • 本文档非官方文档,是由本人根据 Askama 官方文档 加上自己的理解编写而成的,不保证正确性。
  • 本文档是在本人学习 Askama 过程中,发现缺少中文资料,甚至很多网上查找的资料中的内容是不正确的, 故此,我将自己学习 Askama 的过程记录下来,以供参考。
  • Askama 官方框架更新频繁,本人学习过程中的用法,在后续的过程中可能会有所改变,不保证本文档更新及时。
  • 在学习、开发、使用过程中,如果您发现错误、改进或建议,不欢迎提交错误,不会有任何改进,同样也请保留您的宝贵建议。

一、Askama是什么?

Askama实现了一个基于Jinja的模板渲染引擎。 它在编译时根据用户定义的模板生成 Rust 代码struct以保存模板的上下文。

二、功能亮点:

  • 使用熟悉且易于使用的语法构建模板。
  • 受益于Rust类型系统提供的安全性。
  • 模板代码被编译到您的crate中以获得最佳性能。
  • ActixAxumGothamMendesRockettidewarp Web 框架的可选内置支持。
  • 调试功能可帮助您进行模板开发。
  • 模板必须是有效的 UTF-8 并在渲染时生成 UTF-8。
  • JetBrains 产品中提供 IDE 支持。
  • 适用于稳定的 Rust。

三、模板中支持:

  • 使用熟悉且易于使用的语法构建模板。
  • 模板继承
  • 循环、if/else 语句并包含支持
  • 宏支持
  • 变量(不允许可变)
  • 一些内置过滤器,以及使用您自己的过滤器的能力
  • 使用“-”标记抑制空格
  • 选择退出 HTML 转义
  • 语法定制
简介 has loaded