uniapp-商城-46-创建schema并新增到数据库

在后台页面中,数据管理是关键。最初,数据可能是通过代码硬编码在页面中,但这种方式缺乏灵活性和扩展性。为了适应实际需求,应使用数据库来存储数据,允许用户自行添加和更新信息。通过数据库,后台页面可以动态获取和展示用户提交的数据,实现数据的实时更新和管理。这种设计不仅提高了系统的可维护性,还增强了用户体验,使数据管理更加高效和灵活。

上面后台管理的数据是通过代码写死的。

但是真实的数据,是用户自己添加的。通过数据库获取的。

1、创建schema文件

如果直接到后台数据库添加,不便于移植

为方便后期移植使用,创建好schema,后台云数据库可以通过schema创建数据表。

unicloud---database----右键创建schema

然后选择商品类别的模板(一般都有,也可以自己定义),定义自己的schema的文件名字。点击确定创建schema文件。

2、处理模版-->自己需要的商品分类模板

删除多余部分,加入必填字段

//必填项目 required

具体的js代码:

javascript 复制代码
{
	"bsonType": "object",
	//必填项目 required
	"required": [
		"name"
	],
	//权限,read 开启 ,默认时 先不校验,后面需要再来处理
	"permission": {
		"read": true,
		"create": false,
		"update": false,
		"delete": false
	},
	"properties": {
		//这里的id 是数据库自己的  不要动
		"_id": {
			"description": "存储文档 ID(文章 ID),系统自动生成"
		},
		// 我们这里没有父级,所以删除掉
		/***
		"parent_id": {
			"bsonType": "string",
			"description": "父ID,用于多级分类"
		},
		***/
		"name": {
			"bsonType": "string",
			"description": "类别名称",
			"title": "类别名称",
			"trim": "both"
		},
		/*** 我们没有图标,也删除
		"icon": {
			"bsonType": "string",
			"description": "类别图标/图片地址",
			"title": "图标地址",
			"pattern": "^(http://|https://|/|./|@/)\\S",
			"trim": "both"
		},
		***/
		// 排序,按照数值
		"sort": {
			"bsonType": "int",
			"description": "类别排序,越大越靠后",
			"title": "排序"
		},
		//描述 可以为空,到时不添加也可以,先留下来
		"description": {
			"bsonType": "string",
			"description": "类别描述",
			"title": "类别描述",
			"trim": "both"
		},
		/*** 是否热门 不用都删除
		"is_hot_show": {
			"bsonType": "bool",
			"title": "加入热门显示",
			"description": "是否热门显示"
		},
		***/
		/***是否首页  不用都删除
		"is_index_show": {
			"bsonType": "bool",
			"title": "首页显示",
			"description": "是否首页显示"
		},
		***/
		//创建时间  当前时间  now 使用$env 获取
		"create_date": {
			"bsonType": "timestamp",
			"description": "创建时间",
			"defaultValue": {
				"$env": "now"
			}
		}
	},
	"version": "0.0.1"
}

3、上传数据表到云后台数据库

再unicloud 就存在这个数据表了

4、同样就可以移植到其他地方部署,然后上传这个schema就好了(一般就是上传database,其中就包含这个schema)

相关推荐
一份执念13 小时前
uni-app项目 (vue+vite + uni-UI)中引入umd格式JS文件,微信小程序中导入报错处理方案
前端·uni-app·echarts
PedroQue9919 小时前
V1.6.1性能优化:高频路径提速与代码精简
前端·uni-app
夏碧笔3 天前
uni-app跨端地图实战:用第三方LBS替代微信平台收费服务
uni-app
用户6990304848757 天前
try catch使用场景 处理同步代码错误兼容用的
javascript·uni-app
ITKEY_8 天前
uniapp微信开发者工具 更改AppID失败 touristappid
uni-app
Geek_Vison8 天前
APP瘦身实战:从80MB+砍到15MB——基于小程序容器技术剥离APP非核心业务的实践分享
小程序·uni-app·mpaas
CHB8 天前
HDC2026 演讲实录|AI 驱动的跨端进化:利用 uni-agent 快速构建高性能鸿蒙应用
uni-app·harmonyos
2501_915918419 天前
iOS App性能测试工具的实现方法与优化循环指南
android·ios·小程序·https·uni-app·iphone·webview
斯内普吖9 天前
(开源)高校素拓分管理系统小程序实战指南 基于 Java + SpringBoot + uni-app + Vue + MySQL
java·spring boot·mysql·小程序·uni-app·开源
海阔天空66889 天前
uniapp开启调试模式
uni-app·uniapp开启调试模式