|
@@ -171,6 +171,7 @@ z.coerce.boolean().openapi({
|
|
|
1. **创建Schema**:
|
|
1. **创建Schema**:
|
|
|
- 不包含`id`字段(由数据库自动生成)
|
|
- 不包含`id`字段(由数据库自动生成)
|
|
|
- 所有必填字段必须显式定义,不得为`optional()`
|
|
- 所有必填字段必须显式定义,不得为`optional()`
|
|
|
|
|
+ - 如字段为选填项(包括数据库允许为null的字段),必须显式添加`optional()`
|
|
|
- 必须使用适当的coerce方法处理非字符串类型
|
|
- 必须使用适当的coerce方法处理非字符串类型
|
|
|
|
|
|
|
|
```typescript
|
|
```typescript
|
|
@@ -194,6 +195,12 @@ export const CreateEntityDto = z.object({
|
|
|
expireDate: z.coerce.date().openapi({
|
|
expireDate: z.coerce.date().openapi({
|
|
|
description: '过期日期',
|
|
description: '过期日期',
|
|
|
example: '2024-12-31T23:59:59Z'
|
|
example: '2024-12-31T23:59:59Z'
|
|
|
|
|
+ }),
|
|
|
|
|
+ // 选填字段示例
|
|
|
|
|
+ // nullable字段必须显式添加optional()
|
|
|
|
|
+ description: z.string().max(500).nullable().optional().openapi({
|
|
|
|
|
+ description: '商品描述(选填)',
|
|
|
|
|
+ example: '这是一个可选的商品描述信息'
|
|
|
})
|
|
})
|
|
|
});
|
|
});
|
|
|
```
|
|
```
|