diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 5f74af31..f19b7d46 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -1,7 +1,7 @@ /* * @Author: yubaolee | ahfu~ <954478625@qq.com> * @Date: 2023-08-12 10:48:24 - * @LastEditTime: 2024-11-29 09:36:05 + * @LastEditTime: 2025-03-31 10:24:25 * @Description: * @ * @Copyright (c) 2023 by yubaolee | ahfu~ , All Rights Reserved. @@ -91,7 +91,7 @@ module.exports = { path: 'start', // 可选的, 标题的跳转链接,应为绝对路径且必须存在 sidebarDepth: 1, // 可选的, 默认值是 1 collapsable: false, - children: ['start', 'specialist', 'deploy', 'deployapi', 'devnew', 'multidbs', 'multitenant', 'unitwork','sqlsugar', 'entity', 'datavalidation', 'log', 'identity', 'job', 'cache', 'unittest','changesdk'], + children: ['start', 'specialist', 'deploy', 'deployapi', 'devnew', 'multidbs', 'multitenant', 'unitwork','sqlsugar', 'entity','dynamicapi', 'datavalidation', 'log', 'identity', 'job', 'cache', 'unittest','changesdk'], }, { title: '权限控制', // 必要的 diff --git a/docs/core/dynamicapi.md b/docs/core/dynamicapi.md new file mode 100644 index 00000000..2fd1a7a7 --- /dev/null +++ b/docs/core/dynamicapi.md @@ -0,0 +1,89 @@ +# 动态API + +加快系统开发速度,框架提供动态API功能,可以实现无代码调整操作数据库。 + +## 数据库操作 +在开发过程中,对于有些简单表的处理,如果每次都编写对应的增删改查,会增加工作量,且代码臃肿。这时我们可以使用动态API来处理。只需要前端按规范调用即可,后端无需做任何工作。OpenAuth.Net的动态API支持以下功能: + +- 新增记录 `/api/dynamicapi/add` +- 修改记录 `/api/dynamicapi/update` +- 删除记录 `/api/dynamicapi/delete` +- 查询单条 `/api/dynamicapi/get` +- 查询列表 `/api/dynamicapi/getlist` + +具体的参数可以查询对应的接口文档。我们以一个简单的表`noentity`为例,来说明如何使用动态API。 +```sql +CREATE TABLE `noentity` ( + `id` varchar(50) NOT NULL, + `name` varchar(255) NULL, + `age` int(11) NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +``` +无需在后端添加任何代码,只需前端按规范调用即可。 + +## 新增记录 + +前端请求方式为`POST`,请求地址为`/api/dynamicapi/add`,请求参数为: + +```json +{ + "tableName": "noentity", + "obj": "{\"name\":\"测试\"}" +} +``` + +## 修改记录 + +前端请求方式为`POST`,请求地址为`/api/dynamicapi/update`,请求参数为: + +```json +{ + "tableName": "noentity", + "obj": "{\"id\":\"1\",\"name\":\"测试新\"}" +} +``` +注意修改的时候,必须包含主键Id字段。 + +## 删除记录 + +前端请求方式为`POST`,请求地址为`/api/dynamicapi/delete`,请求参数为: + +```json +{ + "tableName": "noentity", + "ids": ["1"] +} +``` + +## 查询单条记录 + +前端请求方式为`POST`,请求地址为`/api/dynamicapi/get`,请求参数为: + +```json +{ + "tableName": "noentity", + "id": "1" +} +``` + +## 查询列表 + +前端请求方式为`POST`,请求地址为`/api/dynamicapi/getlist`,请求参数为: + +```json +{ + "tableName": "noentity", + "pageIndex": 1, + "pageSize": 10 +} +``` + + + + + + + + +