Upload Field

Example uses:
- To provide a
Page
with a featured image - To allow for a
Product
to deliver a downloadable asset like PDF or MP3 - To give a layout building block the ability to feature a background image
Config
Option | Description |
---|---|
| To be used as the property name when stored and retrieved from the database. More |
| Provide a single collection |
| A query to filter which options appear in the UI and validate against. More. |
| Sets a number limit on iterations of related documents to populate when queried. Depth |
| Text used as a field label in the Admin panel or an object with keys for each language. |
| Enforce that each entry in the Collection has a unique value for this field. |
| Provide a custom validation function that will be executed on both the Admin panel and the backend. More |
| Build an index for this field to produce faster queries. Set this field to |
| If this field is top-level and nested in a config supporting Authentication, include its data in the user JWT. |
| Provide field-based hooks to control logic for this field. More |
| Provide field-based access control to denote what users can see and do with this field's data. More |
| Restrict this field's visibility from all APIs entirely. Will still be saved to the database, but will not appear in any API or the Admin panel. |
| Provide data to be used for this field's default value. More |
| Enable displaying preview of the uploaded file. Overrides related Collection's |
| Enable localization for this field. Requires localization to be enabled in the Base config. |
| Require this field to have a value. |
| Admin-specific configuration. See the default field admin config for more details. |
| Extension point for adding custom data (e.g. for plugins) |
\* An asterisk denotes that a property is required.
Example
collections/ExampleCollection.ts
Filtering upload options
Options can be dynamically limited by supplying a query constraint, which will be used both for validating input and filtering available uploads in the UI.
The filterOptions
property can either be a Where
query, or a function returning true
to not filter, false
to prevent all, or a Where
query. When using a function, it will be called with an argument object with the following properties:
Property | Description |
---|---|
| The |
| An object of the full collection or global document currently being edited |
| An object of the document data limited to fields within the same parent to the field |
| The value of the collection |
| The currently authenticated user object |
Example:
You can learn more about writing queries here.