Jinja2 template¶
Create and render a jinja2 template. See Jinja2 for full syntax of the template engine.
Input data can be of any type and is accessed using {{arg}}.
The examples below assume that the first input is a table.
Example of iterating over each column:
{% for name in arg.column_names() %}
The column name is: {{name}}
The column data is: {% for value in arg.col(name).data %} {{value}} {% endfor %}
{% endfor %}
Example of iterating over one specific column:
{% for value in arg.col('Foo').data %}
{{ value }}
{% endfor %}
Example of iterating over each row:
{% for row in arg.to_rows() %}
{% for value in row %} {{value}} {% endfor %}
{% endfor %}
The examples below assume that you have created a tuple or list of tables as input:
{% for tbl in arg %}
Table name: {{ tbl.name }}
{% for col in tbl.cols() %}
{{ col.name }}: {% for x in col.data %} {{x}} {% endfor %}
{% endfor %}
{% endfor %}
Finally, you can connect complex datatypes such as an ADAF to the node:
{% for name, col in arg.sys['system0']['raster0'].items() %}
Signal: {{name}}
Time: {{ col.t }}
Value: {{ col.y }}
{% endfor %}
Have a look at the Data type APIs to see what methods and attributes are available on the data type that you are working with.
- Input ports:
in: <a>
Input
- Output ports:
out: text
Rendered Template
- Configuration:
- Template: (template)
- Enter template here