You need to enable JavaScript to run this app. 如何在KeystoneJS Admin App中指定Fieldset?
优惠活动
大模型
产品
解决方案
定价
更多

如何在KeystoneJS Admin App中指定Fieldset?

Keystone v5 Admin App FieldSet配置方案

Keystone v5的Admin App完全支持自定义FieldSet(字段分组),你可以通过列表配置的fieldsets属性将所有SEO相关字段归类到同一分组下,具体实现方案如下:

实现步骤

  • 在对应列表的createList配置中新增fieldsets属性,该属性接收一个数组,每个数组元素对应一个字段分组
  • 每个分组配置包含label(分组在Admin页展示的名称)和fields(该分组下包含的字段名数组)两个必填属性
  • 将所有SEO相关字段的字段名统一放入同一个分组的fields数组中即可完成归类

配置示例

const { Keystone } = require('@keystonejs/keystone');
const { Text } = require('@keystonejs/fields');

keystone.createList('Article', {
  // 字段定义
  fields: {
    title: { type: Text, label: '文章标题' },
    content: { type: Text, label: '文章内容' },
    // SEO相关字段
    seoTitle: { type: Text, label: 'SEO标题' },
    seoDesc: { type: Text, label: 'SEO描述' },
    seoKeywords: { type: Text, label: 'SEO关键词' },
    shareImg: { type: Text, label: '社交分享图' },
  },
  // 字段分组配置
  fieldsets: [
    {
      label: '基础内容',
      fields: ['title', 'content']
    },
    {
      label: 'SEO设置',
      fields: ['seoTitle', 'seoDesc', 'seoKeywords', 'shareImg'],
      collapsed: true // 可选配置:设置为true时该分组默认收起
    }
  ]
});

注意事项

所有在fields中定义的字段必须被分配到至少一个FieldSet中,未被分配的字段不会在Admin编辑页面展示。如果有不需要分组的字段,可以新增一个无label的分组存放,也可以放到通用分组下。

内容的提问来源于stack exchange,提问作者acmoune

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 15:57:03