.github
cypress
dev-test
img
packages
scripts
website
content
blog
docs
widgets
boolean.md
date.md
datetime.md
file.md
hidden.md
image.md
list.md
map.md
markdown.md
number.md
object.md
relation.md
select.md
string.md
text.md
add-to-your-site.md
architecture.md
authentication-backends.md
beta-features.md
cloudinary.md
collection-types.md
configuration-options.md
contributor-guide.md
custom-widgets.md
customization.md
deploy-preview-links.md
examples.md
gatsby.md
intro.md
netlify-large-media.md
start-with-a-template.md
update-the-cms-version.md
uploadcare.md
widgets.md
pages
.keep
data
src
static
.babelrc
.gitignore
.nvmrc
.stylelintrc
README.md
gatsby-browser.js
gatsby-config.js
gatsby-node.js
package.json
postcss.config.js
yarn.lock
.all-contributorsrc
.editorconfig
.eslintrc
.gitignore
.nvmrc
.prettierignore
.prettierrc
.stylelintrc
.travis.yml
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
babel.config.js
custom-preprocessor.js
cypress.json
jest.config.js
lerna.json
package.json
renovate.json
setupTestFramework.js
yarn.lock
* make widget docs editable * update widget doc frontmatter keys * improve docs preview * fix formatting * fix preview * add prism highlighting for previews * fix formatting * restore cms branch
35 lines
1.2 KiB
Markdown
35 lines
1.2 KiB
Markdown
---
|
|
label: "Object"
|
|
title: object
|
|
---
|
|
|
|
The object widget allows you to group multiple widgets together, nested under a single field. You can choose any widget as a child of an object widget—even other objects.
|
|
|
|
- **Name:** `object`
|
|
- **UI:** a field containing one or more child widgets
|
|
- **Data type:** list of child widget values
|
|
- **Options:**
|
|
- `default`: you can set defaults within each sub-field's configuration
|
|
- `fields`: (**required**) a nested list of widget fields to include in your widget
|
|
- **Example:**
|
|
```yaml
|
|
- label: "Profile"
|
|
name: "profile"
|
|
widget: "object"
|
|
fields:
|
|
- {label: "Public", name: "public", widget: "boolean", default: true}
|
|
- {label: "Name", name: "name", widget: "string"}
|
|
- label: "Birthdate"
|
|
name: "birthdate"
|
|
widget: "date"
|
|
default: ""
|
|
format: "MM/DD/YYYY"
|
|
- label: "Address"
|
|
name: "address"
|
|
widget: "object"
|
|
fields:
|
|
- {label: "Street Address", name: "street", widget: "string"}
|
|
- {label: "City", name: "city", widget: "string"}
|
|
- {label: "Postal Code", name: "post-code", widget: "string"}
|
|
```
|