pydantic-models-py
멀티모델 패턴으로 Pydantic 모델 구축
수동으로 보일러플레이트를 작성하지 않고 일관된 API 스키마를 정의합니다. 이 스킬은 요청 검증, 응답 및 데이터베이스 통합을 위한 확립된 패턴을 따르는 구조화된 Pydantic 모델을 생성합니다.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"pydantic-models-py" 사용 중입니다. id, name, email, created_at 필드가 있는 User 엔티티
예상 결과:
적절한 Field 정의, 타입 주석 및 별칭 처리를 위한 Config 클래스가 포함된 UserBase, UserCreate, UserUpdate, UserResponse 및 UserInDB 모델 클래스 생성
"pydantic-models-py" 사용 중입니다. camelCase API 호환성이 필요한 Project 모델
예상 결과:
Python 내부에서 snake_case를 사용하면서 두 명명 규칙을 모두 수용하는 Field 별칭(workspaceId, createdAt)이 있는 모델
보안 감사
안전All 21 static analysis findings are false positives. The scanner misidentified Markdown code block backticks as shell execution, and documentation references to HTTP/cryptography as actual code. SKILL.md is pure documentation with Python code examples for Pydantic model patterns. No executable code, network calls, or security risks detected.
품질 점수
만들 수 있는 것
REST API 스키마 정의
일관된 검증 패턴으로 FastAPI 또는 Flask 엔드포인트를 위한 요청/응답 모델을 정의합니다.
데이터베이스 문서 모델링
Cosmos DB 또는 MongoDB 문서 저장을 위해 doc_type 필드가 포함된 InDB 모델 변형을 생성합니다.
프론트엔드-백엔드 컨트랙트 동기화
API 컨트랙트 일관성을 보장하기 위해 일치하는 Python 모델과 TypeScript 타입을 생성합니다.
이 프롬프트를 사용해 보세요
User 엔티티에 대한 Pydantic 모델을 생성하세요. 필드: id (string), name (string, 필수), email (email 검증이 포함된 string), created_at (datetime). Base, Create, Update 및 Response 변형을 포함한 멀티모델 패턴을 사용하세요.
Project 엔티티에 대한 Pydantic 모델을 생성하세요. 모든 필드는 Field 별칭을 사용하여 snake_case와 camelCase를 모두 수용해야 합니다. workspace_id, project_name 및 is_active 필드를 포함하세요.
doc_type 필드가 포함된 InDB 변형을 포함한 Document 엔티티에 대한 완전한 Pydantic 모델을 생성하세요. name에 min_length 검증과 업데이트를 위한 선택적 description 필드를 추가하세요.
중첩된 line_items 배열이 포함된 Order 엔티티에 대한 Pydantic 모델을 구축하세요. 각 라인 아이템은 product_id, quantity 및 price를 가집니다. 모든 필드에 검증 제약이 있는 전체 멀티모델 패턴을 생성하세요.
모범 사례
- Create와 Update 모델을 항상 분리하세요 - Create는 모든 필드가 필수이고, Update는 PATCH 의미론을 위해 모든 필드를 선택적으로 만듭니다
- 선택적 업데이트 필드에 대해 explicit default=None과 Field를 사용하여 null과 설정되지 않은 값을 구분하세요
- Config 클래스에서 populate_by_name = True를 활성화하여 API 클라이언트로부터 snake_case와 camelCase를 모두 수용하세요
피하기
- 요청 본문과 데이터베이스 문서에 동일한 모델 클래스를 재사용하지 마세요 - 분리가 데이터 유출을 방지합니다
- 비즈니스 로직을 모델 클래스에 넣지 마세요 - 검증만 있는 순수 데이터 스키마로 유지하세요
- Cosmos DB를 사용할 때 InDB 모델에서 doc_type을 생략하지 마세요 - 쿼리가 올바른 타입 필터링 없이 실패합니다