data_cleaning/model/model.py
2020-12-23 15:06:44 +08:00

31 lines
1.3 KiB
Python

from pydantic import BaseModel, Field
from model.field_type import MdbObjectId
class GBaseModel(BaseModel):
id: MdbObjectId = Field(..., title="平台", alias='_id')
platform: str = Field(None, title="平台", alias='_platform')
channel_name: str = Field(None, title="channel", alias='_channel_name')
owner_name: str = Field(None, title="owner", alias='_owner_name')
channel_uid: str = Field(None, title="channel_uid", alias='_channel_uid')
device_id: str = Field(None, title='device_id', alias='_device_id')
district_server_id: int = Field(None, title="区服id", alias='_district_server_id')
game_role_id: str = Field(None, title="角色id", alias='_game_role_id')
event_time: int = Field(..., title="事件时间", alias='_event_time')
role_create_time: int = Field(None, title="角色创建时间")
role_level: int = Field(None, title="角色等级")
role_vip: int = Field(None, title="角色vip等级")
role_stage: int = Field(None, title="关卡")
@classmethod
def get_fields(cls):
return [v.alias for v in cls.__fields__.values()]
if __name__ == '__main__':
obj = GBaseModel(_id="5fd0f4812de17aeba6c1a373", role_level='2', aaa=123, _platform=13566, _event_time=123456789)
print(GBaseModel.get_fields())
print(obj.dict(by_alias=True))