Field masks and formatting

By default, some field types do not output the value you see in the interface. For example, radio and tag fields output an internal option ID rather than the visible label, and numbers may lack decimals or locale-specific punctuation.

You can customize this behavior using format filters, by changing {{field}} to {{field|format}}.


Numbers

Numeric mask

Applies a positional mask to a numeric value using # as digit placeholders:

{{field|numeric_mask("mask")}}

// Example
{{phone_field|numeric_mask('(###) ###-####')}}  // -> (555) 111-2222

Number formatting

Formats a number with a set number of decimal places and optional locale:

{{field|number(decimal_places, 'country_code')}}

// Example
{{quantity|number(2,"en-US")}}  // -> 15.20

Currency mask

Formats a number as currency with symbol and locale formatting:

{{field|currency(decimal_places, 'country_code')}}

// Example
{{amount|currency(2,"en-US")}}  // -> US$ 1,234.56

Percentage mask

Formats a number as a percentage:

{{field|percent(decimal_places, 'country_code')}}

// Example
{{conversion_rate|percent(2,"en-US")}}  // -> 98.12%

Radio (single select)

Get the visible label

{{field|option("label")}}

// Example
{{marital_status|option('label')}}  // -> Single

Get the internal ID

{{field|option("id")}}

// Example
{{marital_status|option('id')}}  // -> abc123xyz789

Multiple select and tags

Get visible labels

{{field|option("label","separator")}}

// Example
{{tags|option('label',"/")}}  // -> Tech/Urgent

Get internal IDs

{{field|option("id","separator")}}

// Example
{{tags|option('id',"/")}}  // -> abc123xyz789/def456hui321