logologo
开始
手册
开发
插件
API
English
简体中文
开始
手册
开发
插件
API
English
简体中文
logologo
概述

区块

概述

数据区块

表格
表单
详情
列表
网格卡片
图表

筛选区块

表单

其他区块

操作面板
Iframe
引用区块
Markdown
JS Block

区块设置项

数据范围
布局
区块联动规则
字段联动规则
排序规则
区块删除
区块标题

字段

概述

通用配置项

表格字段
详情字段
筛选表单字段
表单字段

特有配置项

日期
文件管理器
子表单
下拉选择器
数据选择器
子表格
子详情
标题
JS Field
JS Item
JS Column

字段配置项

默认值
字段标签
显示标签
字段提示信息
数据范围
字段组件
数值格式化
模式
必填
标题字段
验证规则
关系字段组件

操作

概述

操作配置项

编辑按钮
二次确认
字段赋值
绑定工作流
编辑弹窗
操作联动规则

操作类型

新增
查看
删除
编辑
导入
导入Pro
导出
导出pro
导出附件
筛选
链接
打开弹窗
刷新
提交数据
触发工作流
更新记录
批量更新
JS Action
操作权限

进阶

联动规则
事件流
变量
RunJS
Previous Page编辑
Next Page导入Pro

#导入

该功能由插件 «操作:导入记录» 提供

#介绍

使用 Excel 模板导入数据,可以配置导入哪些字段,自动生成模板。

20251029165818

#导入说明

#数字类型字段

支持数字和百分比,N/A 或 - 的文案会被过滤掉

数字1百分比数字2数字3
12325%N/A-

转 JSON 之后为

{
  "数字1": 123,
  "百分比": 0.25,
  "数字2": null,
  "数字3": null,
}

#布尔类型字段

输入文案支持(英文不区分大小写):

  • Yes,Y,True,1,是
  • No,N,False,0,否
字段1字段2字段3字段4字段4
否是Ytrue0

转 JSON 之后为

{
  "字段1": false,
  "字段2": true,
  "字段3": true,
  "字段4": true,
  "字段5": false,
}

#日期类型字段

DateOnlyLocal(+08:00)GMT
2023-01-18 22:22:222023-01-18 22:22:222023-01-18 22:22:22

转 JSON 之后为

{
  "DateOnly": "2023-01-18T00:00:00.000Z",
  "Local(+08:00)": "2023-01-18T14:22:22.000Z",
  "GMT": "2023-01-18T22:22:22.000Z",
}

#选择类型字段

选项值和选项标签都可作为导入文案,多个选项之间以以逗号(, ,)或顿号(、)区分

如字段 优先级 的可选项包括:

选项值选项标签
low低
medium中
high低

选项值和选项标签都可作为导入文案

优先级
高
low

转 JSON 之后为

[{ 优先级: 'high' }, { 优先级: 'low' }];

#中国行政区字段

地区1地区2
北京市/市辖区天津市/市辖区

转 JSON 之后为

{
  "地区1": ["11","1101"],
  "地区2": ["12","1201"]
}

#附件字段

附件
https://www.nocobase.com/images/logo.png

转 JSON 之后为

{
  "附件": [
    {
      "filename": "logo.png",
      "title": "logo.png",
      "extname": ".png",
      "url": "https://www.nocobase.com/images/logo.png"
    }
  ]
}

#关系类型字段

多条数据以逗号(, ,)或顿号(、)区分

部门/名称分类/标题
开发组分类1、分类2

转 JSON 之后为

{
  "部门": [1], // 1 为部门名称为「开发组」的记录 ID
  "分类": [1,2], // 1,2 为分类标题为「分类1」和「分类2」的记录 ID
}

#JSON 类型字段

JSON1
{"key":"value"}

转 JSON 之后为

{
  "JSON": {"key":"value"}
}

#地图几何图形类型

PointLinePolygonCircle
1,2(1,2),(3,4)(1,2),(3,4),(1,2)1,2,3

转 JSON 之后为

{
  "Point": [1,2],
  "Line": [[1,2], [3,4]],
  "Polygon": [[1,2], [3,4], [1,2]],
  "Circle": [1,2,3]
}

#自定义导入格式

通过 db.registerFieldValueParsers() 方法注册自定义的 ValueParser,如:

import { BaseValueParser } from '@nocobase/database';

class PointValueParser extends BaseValueParser {
  async setValue(value) {
    if (Array.isArray(value)) {
      this.value = value;
    } else if (typeof value === 'string') {
      this.value = value.split(',');
    } else {
      this.errors.push('Value invalid');
    }
  }
}

const db = new Database();

// type=point 的字段导入时,将通过 PointValueParser 解析数据
db.registerFieldValueParsers({
  point: PointValueParser,
});

导入示例

Point
1,2

转 JSON 之后为

{
  "Point": [1,2]
}

#操作配置项

20251029170959

  • 配置可导入字段

20251029171036

  • 联动规则:动态显示/隐藏按钮;
  • 编辑按钮:编辑按钮的标题、类型、图标;