1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
pub use askama::*; pub use gotham::handler::IntoResponse; pub use gotham::state::State; pub use hyper::{Body, Response, StatusCode}; pub fn respond<T: Template>(t: &T, ext: &str) -> Response<Body> { match t.render() { Ok(body) => Response::builder() .status(StatusCode::OK) .header( "content-type", mime::extension_to_mime_type(ext).to_string(), ) .body(body.into()) .unwrap(), Err(_) => Response::builder() .status(StatusCode::INTERNAL_SERVER_ERROR) .body(vec![].into()) .unwrap(), } }