#http-response #tera-templates #tera #rocket #static #web #rocket-framework

rocket-include-tera

这是一个提供宏 tera_resources_initialize!tera_response! 的 crate,用于将 Tera 文件静态地包含到您的 Rust 项目中,并快速将其作为 HTTP 响应源。

42 个版本

0.5.8 2023 年 12 月 15 日
0.5.6 2023 年 11 月 3 日
0.5.4 2022 年 11 月 3 日
0.5.3 2022 年 5 月 10 日
0.4.3 2019 年 7 月 26 日

#861 in 网页编程


4 crates 使用

MIT 许可证

30KB
674

为 Rocket 框架包含 Tera 模板

CI

这是一个提供宏 tera_resources_initialize!tera_response! 的 crate,用于将 Tera 文件静态地包含到您的 Rust 项目中,并快速将其作为 HTTP 响应源。

  • tera_resources_initialize! 用于 TeraResponseFairing 的 fairing 中,将 Tera 文件包含到您的可执行二进制文件中。您需要指定每个文件的名称及其相对于包含您的软件包清单的目录的相对路径。为了减少编译时间和允许热重载模板,文件仅在您使用 release 配置时与可执行二进制文件一起编译。
  • tera_response! 用于通过宏 tera_resources_initialize! 输入并渲染文件,作为带有渲染后的 HTML 的 TeraResponse 实例。当调用其 respond_to 方法时,将自动添加三个 HTTP 头部,Content-TypeContent-LengthEtag,并且渲染后的 HTML 可选不被压缩。
  • tera_response_cache! 用于包装 TeraResponse 和其构造函数,并使用 在内存中缓存其 HTML 和 ETag。缓存仅在您使用 release 配置时生成。
  • tera_resources_initializer! 用于为 tera 资源生成 fairing。

参见 examples

Crates.io

https://crates.io/crates/rocket-include-tera

文档

https://docs.rs/rocket-include-tera

许可证

MIT

依赖项

~22–55MB
~1M SLoC