mirror of
https://github.com/SergioBenitez/Rocket.git
synced 2026-02-06 10:48:05 +00:00
| .. | ||
| src | ||
| tests | ||
| Cargo.toml | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| README.md | ||
dyn_templates

This crate adds support for dynamic template rendering to Rocket. It
automatically discovers templates, provides a Responder to render templates,
and automatically reloads templates when compiled in debug mode. It supports Handlebars, Tera and MiniJinja.
Usage
-
Enable the
rocket_dyn_templatesfeature corresponding to your templating engine(s) of choice:[dependencies.rocket_dyn_templates] version = "0.1.0" features = ["handlebars", "tera", "minijinja"] -
Write your template files in Handlebars (
.hbs) and/or Tera (.tera) in the configurabletemplate_dirdirectory (default:{rocket_root}/templates). -
Attach
Template::fairing()and return aTemplateusingTemplate::render(), supplying the name of the template file minus the last two extensions:use rocket_dyn_templates::{Template, context}; #[get("/")] fn index() -> Template { Template::render("template-name", context! { field: "value" }) } #[launch] fn rocket() -> _ { rocket::build().attach(Template::fairing()) }
See the crate docs for full details.