必须修改原子定义文件(schema.ts或schema.json)后再重新生成代码,才能持久化字段名、类型及校验逻辑的变更;可编辑区标记(@atoms-editable-start/end)内代码不会被覆盖。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在 Atoms 工具中生成代码后,需对字段名、类型或校验逻辑做二次修改,但直接改生成文件易被下次生成覆盖。必须通过修改原子定义再重新生成,才能让修改持久生效且不破坏结构一致性。
确认当前原子定义位置
打开 Atoms 项目根目录 → 进入 atoms/ 文件夹 → 找到对应业务模块子目录(如 user/)→ 定位到 schema.ts 或 model.ts 文件。该文件是字段定义的唯一源头,所有生成代码均从此读取。
若找不到 schema.ts,检查是否使用了 JSON Schema 模式:此时应查找同名目录下的 schema.json,它同样作为字段定义依据。
修改字段名称与类型
方法一:在 schema.ts 中直接编辑 interface 字段声明
将 userName: string; 改为 full_name: string;,同时注意同步更新 JSDoc 注释中的中文描述,例如把“用户姓名”改为“用户全名”。【字段名变更后必须同步更新所有 related 字段的 ref 引用,否则生成时会报错】
方法二:调整字段类型并添加基础校验
把 age: number; 改为 age: number & { __valid: 'age' };,并在同一行下方添加 JSDoc 标注:/** @min 0 @max 150 */。Atoms 会识别此注释并生成对应的 zod.min(0).max(150) 校验逻辑。
为字段添加自定义校验规则
第一步:在字段声明上方添加多行 JSDoc
```ts
/**
* 用户邮箱必须为公司域名
* @pattern ^[\w.-]+@example\.com$
*/
email: string;
```
第二步:确保该字段所在 interface 已启用 zod 插件支持 —— 检查 schema.ts 顶部是否有 import { z } from 'zod'; 且导出语句为 export const UserSchema = z.object({ ... });。没有则手动补全,否则 pattern 不会被解析。
第三步:保存文件后,在终端执行 npx atoms generate 触发重生成。新生成的 DTO 和 validator 文件中,email 字段将自动包含正则校验逻辑。
替换已生成代码中的临时字段占位符
Atoms 默认在生成代码中标记可安全编辑区,形如 // @atoms-editable-start userStatus。找到该标记 → 修改其下方字段赋值语句 → 保留结束标记 // @atoms-editable-end 不动。这类区域不会被下次生成覆盖。
若原字段已被删除但生成代码里仍有残留引用,必须先在 schema.ts 中彻底移除字段定义,再运行生成命令,否则残留引用会导致编译失败。











