tera
tera copied to clipboard
Can 'default' filter use after 'default' filter?
Hi, there.
use std::error::Error;
use tera::{Context, Tera};
type Result<T> = std::result::Result<T, Box<dyn Error + Send + Sync>>;
fn main() -> Result<()> {
let context = {
let mut context = Context::new();
context.insert("name", "");
context.insert("desc", "");
context
};
let tpl = r###"{%- set text = name | default(value=desc) | default(value="default") -%}
{{ text }}"###;
println!("{}", Tera::one_off(tpl, &context, false)?);
Ok(())
}
I want tera output default
, but it output nothing. Is there another way to do this? Or this will work in tera 2?
Does something like let tpl = r###"{%- set text = name | default(value=desc or "default") -%}
work?
No.