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)

相关推荐
花开花落的博客4 小时前
uniapp 不同路由之间的区别
前端·uni-app
Mr.app4 小时前
uniapp自定义导航栏搭配插槽
uni-app
Mark.10248 小时前
uniapp项目打包的微信小程序,设置uni-popup type=“bottom“时,底部有空隙
微信小程序·uni-app·notepad++
是程序喵呀8 小时前
uni-app使用web-view组件APP实现返回上一页
前端·uni-app
发呆小天才yy13 小时前
uniapp 微信小程序使用图表
前端·微信小程序·uni-app·echarts
小离a_a1 天前
uniapp tabBar 中设置“custom“: true 在H5和app中无效解决办法
前端·uni-app
Jiaberrr2 天前
uniapp app 端获取陀螺仪数据的实现攻略
前端·javascript·vue.js·uni-app·陀螺仪
小妖6662 天前
uni-app 引入vconsole web端正常,安卓端报错 Cannot read property ‘sendBeacon‘ of undefined
android·前端·uni-app
源码宝2 天前
ERP进销存系统源码,SaaS模式多租户ERP管理系统,SpringBoot、Vue、UniAPP技术框架
vue.js·spring boot·uni-app·源代码管理·erp·erp系统·进销存