Selaa lähdekoodia

📝 docs(entity): update schema creation documentation

- add rule that optional fields (including database nullable fields) must explicitly add `optional()`
- add example for optional nullable field in CreateEntityDto code sample
yourname 4 kuukautta sitten
vanhempi
sitoutus
2554b1d92a
1 muutettua tiedostoa jossa 7 lisäystä ja 0 poistoa
  1. 7 0
      .roo/rules/10-entity.md

+ 7 - 0
.roo/rules/10-entity.md

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