egg-beehive
egg-beehive copied to clipboard
你好,请教个问题,没搞明白 contract 和ctx.rule,如何关联起来的
我看你的代码,没搞明白 contract 和ctx.rule,如何关联起来的,还有contract 文件夹的文件是自动生成的吗?
egg-swagger-doc 插件提供的。
因为contract的定义和validate-rule的定义具有极大的相似性,所以目前的版本中定义contract的同时会简单的生成相应的validate-rule.具体的使用'ctx.rule.'加Model名称直接引入。
上面的model,在做验证的时候就可以使用如下的方式(需使用egg-validate)
ctx.validate(ctx.rule.createResource, ctx.request.body);
contract 文件夹的文件不是自动生成,是供egg-swagger-doc和egg-validate使用的。
@Imfdj 请问 package.json 中 scripts
脚本中的 generator-entity
命令主要解决什么问题
@qiqingfu 是用来快速生成CRUD的。readme中,“如何快速CRUD”部分有使用说明。 执行npm run generator-entity自动生成一整套文件,包括Swagger、数据校验validate、Sequelize需要的model、controller、service、router。并自动创建数据库表,包括每个字段的类型、长度、是否能为空、默认值、注释、索引、甚至是外键都能搞定。因为加了权限控制,所以还要到前端的资源管理中添加一下新增的资源,并在角色中点选分配一下,就完成了一张表的CRUD了,包括新增、修改、详情、批量删除、分页列表。