sailfish-web 0.2.0

Simple extension crate that enables a simpler api for web server crates
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use rocket::Response;
use rocket::response::content::RawHtml;
use sailfish::TemplateSimple;
use crate::web_servers_support::template::TemplateWrapper;

impl<T: TemplateSimple> Into<RawHtml<String>> for TemplateWrapper<T> {
    fn into(self) -> RawHtml<String> {
        match self.template.render_once() {
            Ok(html) => RawHtml(html),
            Err(err) => {
                let error_message = self.custom_error_message.unwrap_or_else(|| {
                    format!("Failed to render template. Error: {err}")
                });
                RawHtml(error_message)
            }
        }
    }
}