微搭使用笔记(三) 数据模型介绍及初步使用

news2024/9/23 17:11:27

基于数据模型实现表单页面的生成和数据的保存、查看

表单应用是微搭的一个重要的使用场景,我们举下面一个简单的问卷调查的例子:
问卷调查表单展示
基于以上问卷,本文我们采取数据模型的方式生成表单页面并完成数据的保存及查看。

数据模型概述

先看下官方文档对于数据模型的解释(以下内容参考官方文档)

腾讯云微搭低代码支持开发者根据业务建立数据模型以及管理业务数据。开发者可以通过开发应用并引用相关数据模型来显示或操作这些业务数据。

开发应用时,可以使用标准、系统(只读)数据模型或混合使用。腾讯云微搭低代码已预置了一些系统数据模型和示例标准数据模型。

注意

对数据模型的改动(创建、更新、删除)只有在使用该数据模型的应用发布时才会在正式环境生效。一个数据模型若被多个应用使用,则需要每一个使用该数据模型的应用重新发布,才可以使用最新的数据模型。特别地,应用区分预览和正式两种状态,两种状态使用的数据模型亦互不影响。

腾讯云微搭低代码数据模型包含两种类型:

类型说明
标准数据模型标准数据模型是一种最简单、方便的业务数据模型。开发者只需要关注业务模型即可在应用中展示或操作数据,无需关心数据的读写方式、存储过程以及权限控制。 标准数据模型的模型字段由系统字段和自定义字段构成,开发者无法修改、删除系统字段。 标准数据模型包含以下模型方法:新增、新增多条、删除、删除多条、更新、更新多条、查询单条、查询列表,是微搭默认的数据读写方式,数据存储于微搭云数据库内。
系统数据模型系统数据模型是环境内默认创建且包含一定约束的数据模型,微搭低代码平台功能会使用系统数据模型数据,例如用户、部门等。系统数据模型对比标准数据模型具有更多的系统字段,用户无法删除系统数据模型。在模型方法中只支持查询单条和查询列表,用户无法通过模型方法进行写操作。

文档解释的也比较清楚,标准数据模型就是跟业务字段一一对应的一个数据库对象,微搭也支持通过标准数据模型实现表单页面的生成以及数据的增删改查操作,同时内置了这些增删改查的相关接口。也就是说对于简单的增删改查操作用户可以不需要写代码只需要做一些配置即可完成页面的生成以及数据的存储,这个对于一些简单的场景和非技术人员来说还是相当友好的。

接下来我们针对这部分进行实践操作。

新建数据模型

  1. 在微搭控制台数据源-数据模型菜单下,点击新建数据模型,填入相关信息,点击创建,如下图。
    新建数据模型
  2. 创建完成后会进入到数据模型信息页,可以看到微搭提供的一些默认增删改查的方法和编辑字段的地方,在这里我们根据问卷补齐字段。
    数据模型信息页
    点击添加字段按钮,补齐字段,如下图所示:
    数据模型补齐字段
    数据模型添加字段
    添加字段过程中,
  1. 对于单选或者多选有个选项集的概念,其实就是选项对应的key和value,可以直接根据情况新建即可。
  2. 字段名称限制是20个字符,如果超出的话可以考虑在页面上添加小字注释的方式实现

创建应用

在微搭控制台新建一个测试应用,如下图所示:

控制台新建应用

搭建表单页面及微调

进入上一步骤创建的应用,我们添加一个表单组件并做如下图配置:
添加表单组件及配置
按上述步骤操作完成后即可生成如图所示的表单页面,如有必要对内容做微调即可。

上面有提到过数据模型字段长度有20个字符的限制,那对于超出20字的问题这里也提供一种解决思路。
问题12展示
如问题12,标题描述较长,我们页面上只展示了括号前面的那部分内容,我们通过添加小字注释的方式来实现更多内容的展现。

  • 首先在页面上找到问题12对应的组件,可以看到是个下拉选择组件。
  • 我们拖拽一个普通容器将这个组件包裹起来,在这个容器中放置两个文本组件,用于展示标题和副标题。
  • 设置两个文本展示的内容和字体大小、样式等(标题使用正文,副标题使用正文(小))
  • 关闭下拉选择组件展示标题的开关

如下图:
微调过程1
微调过程2
最终展示效果:
最终展示效果
到这里就完成了表单页面的搭建和调整。

数据提交与验证

上一步生成的页面中已经绑定了提交数据的相关事件,我们验证时只需要填写表单内容然后点击提交按钮就可以看到效果了。

数据提交成功
看到提交成功的提示后,我们回到数据模型菜单页面,找到新建的那个数据模型,点击更多菜单里的管理数据按钮,会进入到数据管理页面。

管理数据
在数据管理页面上就可以看到我们刚通过页面提交的表单数据了。
数据管理页面
点击查看按钮可以看到详情,如下图:
数据详情查看
可以看到数据可以正常提交、正常入库。那么到这里我们回过头再关注下这个提交按钮的事件。

在微搭编辑器左侧的大纲树可以看到表单容器绑定了一个事件,可想而知这个事件里面就是调用了数据模型中提供的保存数据的方法,可以具体验证下,如下图:
提交事件查看
事件信息查看
可以看到这里绑定了提交、提交成功、提交失败等6个事件,而这里的提交触发的操作就是调用了数据模型的创建单条记录的方法。

数据模型生成表单的方式是微搭平台帮我们生成的表单页面和表单事件,在后续我们自己创建表单页面和使用事件时也可以作为参考。

关于数据模型的数据列表及详情展示放到后续文章中分享。

到此,本文内容就结束了,希望能够帮助到各位。如有任何疑问或者建议欢迎评论区提出~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/355484.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 TypeScript 的 CheckJS 为你的陈旧 JavaScript 项目续命

🙋 Why CheckJS? 让 JavaScript 项目也能享受到 TS 的类型推导等诸多好处。* 和直迁 TypeScript 相比,大大降低成本和风险,例如:🚥 使用方法 安装依赖、追加配置 # 为你的项目安装 TypeScript npm install typescri…

冰蝎4.0特征分析及流量检测思路

0 1、 冰蝎4.0介绍 冰蝎是一款基于Java开发的动态加密通信流量的新型Webshell客户端。老牌Webshell管理神器——中国菜刀的攻击流量特征明显,容易被各类安全设备检测,实际场景中越来越少使用,加密 Webshell 正变得日趋流行。 由于通信流量被…

JAVA时间类及JAVA8新时间类

文章目录Java旧时间类关系图![在这里插入图片描述](https://img-blog.csdnimg.cn/e2c2c26c841e40bdb9cc85d0fc4bc1df.png)GMT、时间戳、统一标准时间、时区Java时间类创建时间类示例java.text.DateFormat时间格式转换java.util.Calendar总结Java时间类Java8新时间类InstantCloc…

Vulnhub-DC-2实战靶场

Vulnhub-DC-2实战靶场 https://blog.csdn.net/ierciyuan/article/details/127560871 这次试试DC-2,目标是找到官方设置的5个flag。 一. 环境搭建 1. 准备工具 虚拟机Kali: 自备,我的kali的IP为192.168.3.129 靶场机: https…

接口和抽象类

接口(Interface)和抽象类(Abstract Class)是支持抽象类定义的两种机制。 1.抽象类 (1)说明 在Java中被abstract关键字修饰的类称为抽象类,被abstract关键字修饰的方法称为抽象方法,抽象方法只有方法的声明,没有方法体。抽象类是用来捕捉子…

CCNP350-401学习笔记(151-200题)

151、Which two LISP infrastructure elements are needed to support LISP to non-LISP internetworking? (Choose two.)A. PETR B. PITRC. MR D. MS E. ALT 152、In an SD-WAN deployment, which action in the vSmart controller responsible for? A. handle, maintain, …

一文搞懂C/C++内存管理原理与实现

C 语言内存管理指对系统内存的分配、创建、使用这一系列操作。在内存管理中,由于是操作系统内存,使用不当会造成毕竟麻烦的结果。本文将从系统内存的分配、创建出发,并且使用例子来举例说明内存管理不当会出现的情况及解决办法。 一、内存 …

[python入门㊽] - 自定义异常 raise 关键字

目录 ❤ 自定义抛出异常关键字 - raise ❤ 使用raise主动引发异常 ❤ raise 关键字的用法 ❤ 触发异常 ❤ 自定义异常类 在前面我们学过异常三个关键字分别是try、except 以及 finally 在编程过程中合理的使用异常可以使得程序正常的执行。有直接抛出异常的形式&…

【HTML】HTML 表格总结 ★★★ ( 表格标签 | 行标签 | 单元格标签 | 表格标签属性 | 表头单元格标签 | 表格标题标签 | 合并单元格 )

文章目录一、表格标签组成 ( 表格标签 | 行标签 | 单元格标签 )二、table 表格属性 ( border 属性 | align 属性 | width 属性 | height 属性 )三、表头单元格标签四、表格标题标签五、合并单元格1、合并单元格方式2、合并单元格顺序3、合并单元格流程六、合并单元格示例1、原始…

Linux之ping\kill\killall命令

参考视频:linux命令(ping)linux命令(kill、killall)Linux ping 命令用于检测主机。执行 ping 指令会使用 ICMP 传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应…

Redis进阶:布隆过滤器(Bloom Filter)及误判率数学推导

1 缘起 有一次偶然间听到有同事在说某个项目中使用了布隆过滤器, 哎呦,我去,我竟然不知道啥是布隆过滤器, 这我哪能忍?其实,也可以忍,但是,可能有的面试官不能忍!&#…

简介JVM

目录 一、内存分区 1、程序计数器 2、栈 3、堆 4、方法区 二、类加载 1、Loading 2、Linking Verification Preparation Resolution 3、Initializing 4、双亲委派模型 三、垃圾回收 1、如何判断为垃圾? 引入引用计数 可达性分析 2、如…

Transformer论文阅读:Swin Transformer算法笔记

标题:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows 会议:ICCV2021 论文地址:https://ieeexplore.ieee.org/document/9710580/ 官方代码:https://github.com/microsoft/Swin-Transformer 作者单位&am…

[安装之2] 台式计算机加固态硬盘,台式机添加固态硬盘教程_台式主机固态硬盘怎么安装

固态硬盘是用固态电子存储芯片阵列制成的硬盘,也是电脑中比较常见的内存硬件,有些用户在使用电脑时候,由于内存不足导致系统运行较卡的情况,往往会选择添加固态硬盘来解决,那么台式主机固态硬盘怎么安装呢?…

shell脚本内调用另外一个shell脚本的几种方法

有时会在一个shell脚本(如test_call_other_shell.sh)中调用另外一个shell脚本(如parameter_usage.sh),这里总结几种可行的方法,这些方法在linux上和windows上(通过Git Bash)均适用: 1.通过source: 运行在相同的进程,在test_…

CCIE重认证-300-401-拖图题全

拖图 拖图题 编程 snippet;192.168.5.0,mask 255.255.255.0;number是192.168.5.0;mask是255.255.255.0 snippets;edit-config对config,loopback对name 100,address对primary,mask…

广度优先搜索算法 - 迷宫找路

广度优先搜索算法1 思考问题1.1 这个迷宫需不需要指定入口和出口?2 先粗略实现2.1 源码2.2 源码解释3 优化代码3.1 优化读取文件部分3.2 增加错误处理4 再优化-让程序变得更加灵活4.1 用户外部可以循环输入入口和出口5 完整代码这是一个提问者的提出的问题&#xff…

制造业的云ERP在外网怎么访问?内网服务器一步映射到公网

随着企业信息化、智能化时代的到来,很多制造业企业都在用云ERP。用友U 9cloud通过双版本公有云专属、私有云订阅、传统软件购买三种模式满足众多制造业企业的需求,成为一款适配中型及中大型制造业的云ERP,是企业数智制造的创新平台。 用友U 9…

python 面向对象利用selenium【获取某东商品信息】

用python程序和谷歌selenium插件获取某东商品详细信息【商品名称、商品简介,超链接】利用selenium自动化程序 中的css页面结构索取来获取详细数据关于谷歌selenium的安装方法和使用方法第一步检查自己谷歌浏览器的版本1.1 找到设置:并鼠标点击进入1.2进入…

排序评估指标——NDCG和MAP

在搜索和推荐任务中,系统常返回一个item列表。如何衡量这个返回的列表是否优秀呢? 例如,当我们检索【推荐排序】,网页返回了与推荐排序相关的链接列表。列表可能会是[A,B,C,G,D,E,F],也可能是[C,F,A,E,D],现在问题来了…