Skip to content

Render functions in the MiniJinja DuckDB extension

Function category

Render

2 functions

minijinja_render

Scalar function Render
Signature
minijinja_render(template: VARCHAR, varargs: ANY) → VARCHAR
Arguments (Positional)
Argument template Type VARCHAR Mode Positional Description
Argument varargs Type ANY Mode Positional Description Varargs
Description
1 Render without context
SELECT minijinja_render('Hello World!');

minijinja_render_with_context

Scalar function Render
Signature
minijinja_render_with_context( template: VARCHAR, context: JSON, varargs: ANY ) → VARCHAR
Arguments (Positional)
Argument template Type VARCHAR Mode Positional Description
Argument context Type JSON Mode Positional Description
Argument varargs Type ANY Mode Positional Description Varargs
Description
1 Basic substitution
SELECT minijinja_render_with_context('{{ foo }}', '{"foo":"bar"}');
2 Nested fields
SELECT minijinja_render_with_context('Hello {{ user.name }}, {{ user.messages }} new', '{"user":{"name":"Alice","messages":5}}');
3 For loop with comma separator
SELECT minijinja_render_with_context('{% for x in xs %}{{ x }}{% if not loop.last %}, {% endif %}{% endfor %}', '{"xs":["A","B","C"]}');
4 Disable autoescape for raw text
SELECT minijinja_render_with_context('{{ v }}', '{"v":"B&O"}', autoescape := false);