Abstract
This code snippet filters values from a multi-valued field based on a condition
Logic
Use the "filter" Nunjucks filter to filter the values that meet the condition
Snippet
Code Block | ||||
---|---|---|---|---|
| ||||
{# Filter the values from the multi-valued field using "filter" filter #} {{ issue.fields['<Multi-valued field name>'] | filter(<Condition>) | join(",","name") }} |
...
Placeholder | Description | Example |
---|---|---|
> | Name of the multi-valued field | Watchers |
> | Condition to meet for the value to be filtered | {accountId: 'accountId:5ca5b1469a000c1180956957' } |
...
The output of this snippet is a subset of the existing values of a multi-valued field which you could use in a template to:
Set a multi-valued field to a subset of the existing values in one of the Set field value post-functions. Example: Set a Multi-user picker type field to the users in the Watchers field who belong to the Europe/Berlin time zone:
Code Block language js linenumbers true {{ issue.fields['Watchers'] | filter({"timeZone": "Europe/Berlin"}) | join(",","accountId") }}
Send an email to all the users of the Request Participants when a meeting schedule has been changed, except to the current user in the Email issue post-functionthe customers watching the ticket using the Email issue post-function. For this, you need to add this script in the "Users from script" field in the post-function configuration
Code Block language js linenumbers true {{ issue.fields['Request ParticipantsWatchers'] | filter({accountId:currentUser.accountId} , true"accountType": "customer"}) | join('",'",'"accountId'") }}
References
- How to insert information using Nunjucks annotations
- Accessing fields of an issue
- Custom filter - filter
...