Rust-இல் Go html/template பாணி rendering
go_html_template என்பது முக்கியமான Go html/template வேலைப்போக்குகளை பிரதிபலிக்கும் Rust crate ஆகும். இது template syntax, pipelines, context-aware escaping, மற்றும் பாதுகாப்பற்ற URL scheme-களைத் தடுக்குதல் ஆகியவற்றை, பரிச்சயமான API வடிவத்துடன் ஆதரிக்கிறது.
Go போன்ற Template API
define/template/range/with/pipeline அம்சங்களுடன் Template::new(...).parse(...).execute(...) பயன்படுத்தவும்.
Context-aware Escaping
HTML உரை, attributes, URL attributes, மற்றும் script/style contexts-க்கு context-aware escaping பயன்படுத்தி, பாதுகாப்பற்ற javascript: URL-களைத் தடுக்கிறது.
web-rust முறை
web-rust feature உடன், parse_files/parse_glob/parse_fs முடக்கப்படும்; இதனால் memory-இல் template loading-ஐ கட்டாயப்படுத்தலாம்.
அமைப்பு மற்றும் அடிப்படை பயன்பாடு
முதலில் crate-ஐச் சேர்த்து, குறைந்தபட்ச parse + execute_to_string flow-ஐச் சரிபார்க்கவும். web-rust சூழல்களில், file-loading API-களுக்கு பதிலாக memory-இல் உள்ள template string-களைப் பயன்படுத்தவும்.
நிறுவல்
cargo add go_html_template
Rust உதாரணம்
use go_html_template::{Template, Value};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let tpl = Template::new("page")
.parse(r#"<h1>{{.Title}}</h1>\n<p>{{.Body | safe_html}}</p>"#)?;
let out = tpl.execute_to_string(&serde_json::json!({
"Title": "go_html_template",
"Body": "<em>trusted</em>"
}))?;
println!("{out}");
Ok(())
}
பொருந்துதலின் நிலை
go_html_template தற்போது முக்கிய workflow-களை செயல்படுத்தியபோதும், பொருந்துதலிலான இடைவெளிகளை தொடர்ந்து குறைத்து வருகிறது . இது இன்னும் Go html/template-க்கு கடுமையான 1:1 பொருந்துதலின் இலக்காக இல்லை; ஆகையால், உங்களின் production templates-இல் நடத்தைப் பரிசோதிக்கவும்.
முந்தையது
OSS பட்டியல்அடுத்து
README / முழு விவரக்குறிப்புகள்