Reference Field Reference
fields.references()
Multi-template document references, sized and scoped by allowed template names. Not localizable.
Multi-template document references. Maps to editor { name: 'str-references', type: 'references' }. Unlike fields.reference() (a single str-related picker scoped by collection), references is a sized list scoped by allowed template names.
Stored as ContentRef[] (the write shape); at read time the content index projects each entry into the full target document, so strife typegen emits Target[].
Example
fields.references({
label: 'Related content',
allow: ['article', 'video-post'],
size: 5,
})Options
| Option | Type | Required | Description |
|---|---|---|---|
label | string | Yes | Label shown to editors in Strife Studio. |
allow | string | readonly string[] | Yes | The defineType name(s) this field may reference. Emitted as wire options.availableTypes (normalized template names) and drives the generated read type. Pass several to allow a union. |
description | string | No | Tooltip shown to editors. |
searchable | boolean | No | Include in the team's search index. |
filterable | boolean | No | Allow filtering content lists by this value. |
protected | boolean | No | Restrict editing to users with the appropriate permission. |
propertyName | string | No | Override the stored property name. |
size | number | null | No | Maximum number of references. |
hint | string | null | No | Display hint shown above the references list in the editor. |
No localizable option.
Output type
Write shape: ContentRef[]. Generated read shape (via strife typegen): Target[].
See also
- References — the same editor, documented from the Strife Studio UI side.
fields.reference()— scoped by collection (to) rather than by template name (allow).