xbackend/crud/curd_dashboard.py
2021-04-30 18:52:30 +08:00

29 lines
830 B
Python

from typing import Any, Dict, Optional, Union
from fastapi import HTTPException
from fastapi.encoders import jsonable_encoder
from sqlalchemy.orm import Session
from crud.base import CRUDBase
from models.authority import Authority
from models.dashboard import Dashboard
from models.folders import Folder
from models.space import Space
from schemas import DashboardCreate, DashboardUpdate
class CRUDDashboard(CRUDBase[Dashboard, DashboardCreate, DashboardUpdate]):
def create_with_dashboard(
self, db: Session, *, obj_in: DashboardCreate, user_id: int
) -> Dashboard:
obj_in_data = jsonable_encoder(obj_in)
db_obj = self.model(**obj_in_data, user_id=user_id)
db.add(db_obj)
db.commit()
db.refresh(db_obj)
return db_obj
dashboard = CRUDDashboard(Dashboard)