36 lines
746 B
Python
36 lines
746 B
Python
from datetime import datetime
|
|
from typing import Optional
|
|
|
|
from pydantic import BaseModel, root_validator, Field
|
|
|
|
|
|
class DashboardBase(BaseModel):
|
|
name: str = None
|
|
folder_id: int = None
|
|
space_id: int = None
|
|
|
|
|
|
class DashboardCreate(DashboardBase):
|
|
name: str
|
|
|
|
# @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 DashboardUpdate(DashboardBase):
|
|
pass
|
|
|
|
|
|
class Dashboard(DashboardBase):
|
|
name: str=None
|
|
user_id: int=None
|
|
folder_id: int=None
|
|
space_id: int=None
|
|
|
|
class Config:
|
|
orm_mode = True
|