字段
字段定义了内容结构,以及在编辑器中为特定集合出现的表单字段。
这些字段被分类为字段类型——它们决定了存储的数据以及在编辑器中出现的输入组件。
字段类型的选项包括:
rich-text(markdown)
基本类型定义如下所示。某些字段类型通过特定类型的选项扩展了以下类型定义。
类型定义
字段的名称。
决定使用的数据类型和表单字段。
在编辑器中显示的集合名称。如果省略,则使用name。
将显示给用户的关于字段的简短描述。
如果为true,则在该字段没有值时禁用保存。
false.控制在内容文件中使用的字段名称。
定义字段标题。
仅限String字段。
false.定义哪个字段保存到Markdown正文中。
仅限Text(rich-text和string)字段。
false.将允许的值限制为给定选项。
仅限Scalar字段。
All properties marked as REQUIRED must be specified for the field to work properly.
名称
用于GraphQL模式中的字段名称。
在同级字段中应是唯一的。
此名称不能包含空格、破折号或特殊字符。
nameOverride属性可以设置为用于替换内容文件中的字段名称。在其他情况下仍将使用实际的名称属性。
字段标题
isTitle控制在集合页面中显示哪个字段。如果从未设置,将使用文件名。
要使用此属性...
- 将其保持为顶级字段(它在
collections.fields或collections.templates.fields中定义)。 - 在同一字段上设置
required为true。 - 每个集合中仅包含一个字段。
字段(markdown)正文
通常保存在markdown文件中的内容将存储在前置部分。
isBody控制链接到正文部分的字段。
要使用此属性...
- 字段应为
rich-text或string类型。 - 集合应为
"mdx"或"md"格式。 - 每个集合中仅包含一个字段。
列表字段
指定list: true会创建一个关联字段的数组。
- 只有以下类型在CMS中内置了专用的列表UI...
ui.max
在对象字段类型的列表上设置ui.max会在编辑器中禁用添加按钮,一旦至少添加了给定数量的元素。
不支持使用模板的对象。
ui.min
对于任何列表字段,如果设置了ui.min,则删除按钮会变灰(见下图),当项目少于最小数量时。
选择字段
任何标量字段都可以接受一个options数组来限制允许的值。这会将编辑器组件更改为下拉菜单或复选框集。
您可以传入一个值数组,或一个结构为以下的对象数组:
选项属性 | 定义 |
|---|---|
value | 与选项关联的实际值。 |
label | 在编辑器中显示的此选项的名称。 |
复选框字段
通过同时使用options和list属性创建一组复选框字段:
下拉字段
通过使用options而不使用list属性创建一个下拉字段:
格式化字段值
format和parse定义了控制渲染内容和保存内容的函数。
在下面的示例中,当用户输入时,他们将看到所有小写字符。当保存时,它将是所有大写字符。
验证字段值
TinaCMS允许使用验证函数ui.validate进行客户端验证。如果值无效,此函数返回一个string错误消息;如果字段有效,则返回null。
要在验证中包含表单的其他字段值,可以使用allValues参数。
不兼容引用、对象和富文本字段类型——它们有更复杂的内部结构。