render#

langchain_core.utils.mustache.render(
template: str | list[tuple[str, str]] = '',
data: Mapping[str, Any] = mappingproxy({}),
partials_dict: Mapping[str, str] = mappingproxy({}),
padding: str = '',
def_ldel: str = '{{',
def_rdel: str = '}}',
scopes: list[Literal[False, 0] | Mapping[str, Any]] | None = None,
warn: bool = False,
keep: bool = False,
) str[source]#

Render a mustache template.

Renders a mustache template with a data scope and inline partial capability.

Parameters:
  • template (str | list[tuple[str, str]]) – A file-like object or a string containing the template.

  • data (Mapping[str, Any]) – A python dictionary with your data scope.

  • partials_path – The path to where your partials are stored. If set to None, then partials won’t be loaded from the file system (defaults to ‘.’).

  • partials_ext – The extension that you want the parser to look for (defaults to ‘mustache’).

  • partials_dict (Mapping[str, str]) – A python dictionary which will be search for partials before the filesystem is. {‘include’: ‘foo’} is the same as a file called include.mustache (defaults to {}).

  • padding (str) – This is for padding partials, and shouldn’t be used (but can be if you really want to).

  • def_ldel (str) – The default left delimiter (“{{” by default, as in spec compliant mustache).

  • def_rdel (str) – The default right delimiter (“}}” by default, as in spec compliant mustache).

  • scopes (list[Literal[False, 0] | ~collections.abc.Mapping[str, ~typing.Any]] | None) – The list of scopes that get_key will look through.

  • warn (bool) – Log a warning when a template substitution isn’t found in the data

  • keep (bool) – Keep unreplaced tags when a substitution isn’t found in the data.

Returns:

A string containing the rendered template.

Return type:

str