From 0fcd355644d0780bd46ab4b782aaca66b31c0ae7 Mon Sep 17 00:00:00 2001 From: Robert Date: Sun, 25 Feb 2024 16:53:15 +0700 Subject: [PATCH] refactored for camelCase --- chain_service/database/models/base.py | 12 +++++++++--- chain_service/database/models/chain.py | 10 ++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/chain_service/database/models/base.py b/chain_service/database/models/base.py index a21825b..3f4579c 100644 --- a/chain_service/database/models/base.py +++ b/chain_service/database/models/base.py @@ -1,10 +1,16 @@ from uuid import UUID, uuid4 from pydantic import BaseModel, Field +from pydantic.alias_generators import to_camel + + +class BaseConfig: + alias_generator = to_camel + json_encoders = {UUID: str} + arbitrary_types_allowed = True class BaseMongoModel(BaseModel): id: UUID = Field(default_factory=uuid4, alias="_id") - class Config: - json_encoders = {UUID: str} - arbitrary_types_allowed = True + class Config(BaseConfig): + pass diff --git a/chain_service/database/models/chain.py b/chain_service/database/models/chain.py index 0720426..9e94b41 100644 --- a/chain_service/database/models/chain.py +++ b/chain_service/database/models/chain.py @@ -1,4 +1,4 @@ -from .base import BaseMongoModel +from .base import BaseConfig, BaseMongoModel from datetime import datetime from pydantic import BaseModel, Field @@ -9,11 +9,17 @@ class WaitAction(BaseModel): action_type: Literal["wait"] wait_for: int + class Config(BaseConfig): + pass + class TextCommentAction(BaseModel): action_type: Literal["text_comment"] text: str + class Config(BaseConfig): + pass + Action = Annotated[ Union[WaitAction, TextCommentAction], Field(description="action_type") @@ -25,5 +31,5 @@ class Chain(BaseMongoModel): actions: Annotated[Optional[List[Action]], Field(default=[])] last_modified: Annotated[datetime, Field(default_factory=datetime.utcnow)] - class Config(BaseMongoModel.Config): + class Config(BaseConfig): pass