用途:在编写或修改 AdonisJS v7 后端代码时提供框架层规范,涵盖控制器、路由、中间件、服务、VineJS 校验器、Transformer、策略与事件等。数据库与 ORM(迁移、schema、模型、关系、查询构建器、事务、工厂与种子)不在本技能范围,需加载 lucid。
主要能力与约定:路由写在 start/routes.ts,固定路由必须放在动态参数路由之前,使用 controllers 生成引用与 middleware.auth()/guest()。控制器位于 app/controllers/,业务逻辑下沉到 app/services/,校验使用独立 app/validators/ 文件,授权用 bouncer.with(Policy).authorize()(拒绝抛 403),Transformer 中用 allows()。Transformer 继承 BaseTransformer,使用 pick、whenLoaded 与变体(useVariant),支持 transform、paginate。校验用 vine.create()(非 vine.compile()),可通过 schema.clone() 复用规则。导入必须使用子路径,如 @adonisjs/core/http、@adonisjs/core/transformers、@adonisjs/bouncer、@adonisjs/core/services/router、@adonisjs/core/services/url_builder、@vinejs/vine,禁止从 @adonisjs/core 根包导入。
使用方式:提供 Ace CLI 命令,如 node ace make:controller Post --resource、make:validator、make:transformer、make:policy、make:service、make:event、make:listener、make:job、make:middleware、make:exception、make:command、make:mail,以及 list:routes、repl、generate:key。@generated/data 类型由开发服务器自动生成。
适用场景:实现新功能、调试、创建 Service Provider 与 IoC 绑定、自定义异常、事件解耦、代码审查。
限制:资料未提供版本兼容细节、安装步骤、收费与平台信息;具体实现需参考随附的 workflows 与 references 文档。