diff --git a/README.md b/README.md index fc5cf34..8913fdf 100755 --- a/README.md +++ b/README.md @@ -63,6 +63,71 @@ $ open http://localhost:8001/ 注: 如果你的网络不佳可以尝试使用[cnpm](https://developer.aliyun.com/mirror/NPM?from=tnpm),或者切换您的镜像源 +## CURD(快速增删改查) + +大部分的后台管理系统,或者API服务都是对数据进行管理,所以可以看到大量的CRUD场景(增删改查),cool-admin对此进行了大量地封装,让这块的编码量变得极其地少。 + + +#### 新建一个数据表 + +`src/modules/demo/entity/goods.ts`,项目启动数据库会自动创建该表,无需手动创建 + +```ts +import { EntityModel } from '@midwayjs/orm'; +import { BaseEntity } from 'midwayjs-cool-core'; +import { Column } from 'typeorm'; + +/** + * 商品 + */ +@EntityModel('demo_app_goods') +export class DemoAppGoodsEntity extends BaseEntity { + + @Column({ comment: '标题' }) + title: string; + + @Column({ comment: '图片' }) + pic: string; + + @Column({ comment: '价格', type: 'decimal', precision: 5, scale: 2 }) + price: number; + +} + +``` + +#### 编写api接口 + +`src/modules/demo/controller/app/goods.ts`,快速编写6个api接口 + +```ts +import { Provide } from '@midwayjs/decorator'; +import { CoolController, BaseController } from 'midwayjs-cool-core'; +import { DemoAppGoodsEntity } from '../../entity/goods'; + +/** + * 商品 + */ +@Provide() +@CoolController({ + api: ['add', 'delete', 'update', 'info', 'list', 'page'], + entity: DemoAppGoodsEntity +}) +export class DemoAppGoodsController extends BaseController { + +} +``` + +这样我们就完成了6个接口的编写,对应的接口如下: + +- `POST /app/demo/goods/add` 新增 +- `POST /app/demo/goods/delete` 删除 +- `POST /app/demo/goods/update` 更新 +- `GET /app/demo/goods/info` 单个信息 +- `POST /app/demo/goods/list` 列表信息 +- `POST /app/demo/goods/page` 分页查询(包含模糊查询、字段全匹配等) + + ### 部署 ```bash