当前位置: 首页 > news >正文

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

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

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

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

1、创建schema文件

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

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

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

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

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

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

    //必填项目 required  

具体的js代码:

{"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)

相关文章:

  • AI技术与园区运营的深度融合:未来生态型园区的建设路径
  • 镜头内常见的马达类型(私人笔记)
  • Python 数据分析与可视化:开启数据洞察之旅(5/10)
  • k8s之探针
  • MCP(Model Context Protocol)是专为LLM(大语言模型)应用设计的标准化协议
  • 解决 Ubuntu DNS 无法解析问题(适用于虚拟机 长期使用)
  • Spring MVC Session 属性 (@SessionAttributes) 是什么?如何使用它共享数据?
  • 信赖域策略优化TRPO算法详解:python从零实现
  • .net/C#进程间通信技术方案总结
  • 机器学习与深度学习的区别与联系:多角度详细分析
  • Linux基础(关于进程相关命令)
  • CSS opacity
  • 计算人声录音后电平的大小(dB SPL->dBFS)
  • 访问网站提示“不安全”“有风险”怎么办?
  • 3D桌面可视化开发平台HOOPS Native Platform,如何实现3D系统快速开发与部署?
  • 【网安播报】Meta 推出 LlamaFirewall开源框架以阻止 AI 越狱、注入和不安全代码
  • 【python】 python拆包
  • buck和boost总结
  • web 自动化之 selenium 元素四大操作三大切换等待
  • Oracle非归档模式遇到文件损坏怎么办?
  • 多地再发网约车从业及投资风险提示:避免盲目花费大笔资金“购车”入行
  • 越怕出错越会出错,“墨菲定律”的魔咒该怎么破?
  • 东洋学人|滨田青陵:近代日本考古学第一人
  • “鱼米之乡”江苏兴化的产业哲学:以融合与创新重构价值链条
  • 射箭世界杯赛上海站即将开幕,多方联动讲好上海故事
  • 美国警方:爱达荷州交通事故致7人死亡,8名伤者预计无生命危险