Frappe 框架中提供了多种字段类型。每种字段类型都有其特定的用途,可用于在文档中输入和存储不同类型的数据。字段类型用于在桌面端和 Web 表单中渲染组件。
数据
数据字段是一个简单的文本字段。它允许您输入最多 140 个字符的值,是最通用的字段类型。
您可以为以下数据类型启用验证:
- 姓名
- 电子邮件
- 电话
- 网址
只需将选项分别设置为“姓名”、“电子邮件”、“电话”或“网址”即可。
将选项设置为“IBAN”可启用每 4 个字符一组的格式化显示。
链接
链接字段连接到另一个主数据,并从中获取数据。例如,在报价单主数据中,客户是一个链接字段。要了解更多信息,请点击此处。
动态链接
动态链接字段可以搜索并保存任何文档/文档类型的值。点击此处了解动态链接字段的工作原理。
复选框
这将使您能够在此处拥有一个复选框。您可以将 Default 值设置为 1,默认情况下它将被勾选。
选择
使用“选择”字段类型,您可以创建一个下拉字段。您可以在选项字段中指定所有可选值,每个值用换行符分隔。
可以将其中一个可选值复制到默认值字段中。这样,在新表单中该值将默认被选中。
如果您启用选项排序复选框,则值将按字母顺序显示(以用户的语言显示)。
以下截图显示了如何在文档类型中或通过自定义表单定义“选择”字段:
这是它在新表单中的渲染效果:
表格
使用“表格”字段,您可以将另一个文档类型作为子表渲染在您的表单中。
首先,您需要选择或定义一个启用了是子表复选框的文档类型。然后,您可以添加一个类型为“表格”的字段,并将子表文档类型的名称粘贴到选项字段中。
例如,ERPNext 定义了一个名为“采购收货项目”的子文档类型,并启用了是子表选项:
另一个名为“采购收货”的文档类型有一个类型为“表格”的字段,其选项设置为上述子文档类型“采购收货项目”:
最后,子表将渲染在采购收货表单中:
附件
附件字段允许您从文件管理器中浏览文件并将其附加到此字段中。
附件画廊
附件画廊字段以响应式画廊的形式显示附加到当前文档的文件。图片显示为缩略图,可以打开以进行更大尺寸的预览。其他文件类型显示为文件卡片,并在新标签页中打开。
具有写入权限的用户可以直接从画廊上传和删除附件。启用只读将隐藏这些操作。必须先保存文档,然后才能上传文件。
默认情况下,画廊显示属于该文档的所有附件。使用过滤器来限制显示的文件记录。例如,仅显示 PDF 文件:
[["File", "file_type", "=", "PDF"]]
要仅显示通过特定画廊上传的文件,请使用该画廊的字段名称按 attached_to_field 进行过滤:
[["File", "attached_to_field", "=", "marketing_assets"]]
如果通过画廊上传的文件默认应为公开,请启用使附件公开(默认)选项。
附件图片
附件图片是一种字段,允许您附加 jpeg、png 等格式的图片。该图片将成为代表该特定文档类型的图像。例如,如果您希望在项目文档类型中显示项目的图片,您可以将字段设置为附件图片字段。
文本编辑器
文本编辑器是一个文本字段,渲染一个所见即所得的编辑器用于输入。它具有多种文本格式化选项。
日期
此字段允许您在此字段中输入日期。
日期和时间
此字段将为您提供一个日期和时间选择器。默认设置为当前日期和时间(由您的计算机提供)。
条形码
在此字段中,您可以将字段指定为条形码,这将允许您输入条形码编号。完成后,系统将自动根据该编号生成条形码。
按钮
此字段用于在文档中放置一个按钮。它可用于执行特定操作,如发布博客文章、触发某个动作等。
代码
此字段类型可用于接收 code 作为输入。文档表单中会渲染一个代码编辑器。可选地,您可以在字段类型选项中提供一种语言以启用语法高亮。例如,下面是一个 Code 类型的字段,其选项设置为 Python:
您可以通过设置“选项”来为以下语言启用基本的语法验证。
- Python(用于脚本)
- PythonExpression(用于必须求值为某个值的简单单行表达式)例如:分配规则条件
Python 和 PythonExpression 之间的差异示例:
variable = 42是有效的Python代码,但不是有效的PythonExpression,因为该赋值不会求值为任何值。variable == 42既是有效的Python代码,也是有效的PythonExpression,因为该表达式可以求值为某个值。
颜色
这将允许用户通过渲染的颜色选择器输入颜色,或直接输入十六进制颜色代码。
分栏符
这是一个 'meta' 字段类型,它不存储任何输入数据,但可用于在文档视图或表单中指示分栏。
例如,
将显示为:
货币
货币字段保存数值,如项目价格、金额等。货币字段的值最多可包含六位小数。此外,您还可以为货币字段显示货币符号。
浮点数
浮点数字段携带数值,最多可包含九位小数。
地理位置
地理位置字段将显示一个地图视图,您可以在其上绘制多边形、线条和点。数据以 GeoJSON feature_collection 格式存储。
如果您添加一个字段名恰好为“location”的地理位置字段,您将获得一个额外的地图视图(相当于列表视图,但在地图上显示)。顺便说一下,如果您创建两个分别名为“latitude”和“longitude”的字段,这也同样有效。
注意:Frappe 使用“Leaflet”库,该库将坐标存储为 [纬度, 经度],这与 GeoJSON 通常的做法相反。
HTML
这会将 Options 中输入的内容作为 HTML 渲染在文档表单或视图页面中。以下是一个示例:
将显示为:
图像
图像字段将渲染在另一个附件字段中选择的图像文件。
对于图像字段,应在“选项”(在 DocType 中)中提供一个字段名称,该字段中附加了图像文件。通过引用该字段中的值,图像将作为图像字段中的引用。
将显示为:
整数
整数字段保存数值,没有小数位。
小文本
小文本字段携带文本内容,其字符限制比数据字段更大。
长文本
当您需要输入无字符限制的数据时,可以将字段定义为长文本字段。
文本
此字段类型允许您在字段中添加文本。小文本、长文本和文本字段的字符限制将根据关系数据库管理系统来确定。
Markdown 编辑器
此字段允许您以 Markdown 格式添加文本。此字段类型还提供渲染后 HTML 的 Preview 视图:
当点击预览时:
密码
密码字段将包含解码后的值。此类型的字段可用于存储敏感数据,如密码、口令、密钥等。
百分比
您可以将字段定义为百分比字段,在后台将按百分比进行计算。
评分
此字段可用于显示交互式星级评分输入。默认显示的星数为 5,但是,您可以通过在该特定评分字段的选项字段中输入 3 到 10 之间的数字来轻松更改此设置。
您还可以提供半星评分,例如 3.5 分(满分 5 分)。
只读
只读字段将携带从另一个表单获取的数据,这些数据不可编辑。如果其值的来源是预先确定的,您应将字段类型设置为只读。
分节符
分节符用于将表单划分为多个部分。任何跟在分节符字段之后(并且在任何其他 Section Break 之前)的字段都将属于这个新部分。
分页符
分页符用于将表单划分为多个选项卡。任何跟在分页符之后直到下一个 Tab Break 之前的字段都将属于这个新选项卡。
注意: 如果 DocType 的 fields 表不是以“页签分隔”开头的,系统将使用一个名为 Details 的默认页签分隔。这种情况仅在 DocType 的 fields 表中至少有一个 Tab Break 时才会发生。
签名
您可以将字段定义为签名字段,在此字段中添加数字签名。阅读签名字段的文档以了解更多信息。
表格多选
这是“链接”类型和“表格”类型字段的组合。与带有“添加行”按钮的子表不同,在一个字段中可以同时选择多个值。
时间
这是一个时间字段,您可以在该字段中定义时间。
时长
如果您想定义一个时间段,可以使用时长字段。
如果您不想以天或秒为单位跟踪时长,可以在表单中分别启用“隐藏天数”和“隐藏秒数”选项。一天等于24小时。
JSON
这将在您的数据库中创建一个 JSON 类型的列,并为桌面控件添加语法高亮功能。