xbackend/schemas/dashboard.py
2021-04-30 18:52:30 +08:00

43 lines
825 B
Python

from datetime import datetime
from typing import Optional
from pydantic import BaseModel, root_validator, Field
class DashboardBase(BaseModel):
name: str = None
class DashboardIn(DashboardBase):
project_id: int
space_id: int = None
folder_id: int = None
# @root_validator(pre=True)
# def check_parent(cls, values):
# if (values.get('folder_id') is None) ^ (values.get('space_id') is None):
# return values
# else:
# raise ValueError('必须属于文件夹或者空间')
class DashboardDelete(BaseModel):
id: int
class DashboardCreate(DashboardBase):
name: str
class DashboardUpdate(DashboardBase):
pass
class Dashboard(DashboardBase):
name: str
user_id: int
create_date: datetime
class Config:
orm_mode = True