async def handle_list_projects(request: Request, session: Session = Depends(session_scope)): """ Handles GET requests to /. Parameters ---------- request : fastapi.Request session : sqlalchemy.orm.session.Session Returns ------- projects.schemas.project.ProjectList """ project_controller = ProjectController(session) filters = format_query_params(str(request.query_params)) order_by = filters.pop("order", None) page = filters.pop("page", 1) if page: page = int(page) page_size = filters.pop("page_size", 10) if page_size: page_size = int(page_size) projects = project_controller.list_projects(page=page, page_size=page_size, order_by=order_by, **filters) return projects
async def handle_list_projects( request: Request, session: Session = Depends(database.session_scope), kubeflow_userid: Optional[str] = Header(database.DB_TENANT), ): """ Handles GET requests to /. Parameters ---------- request : fastapi.Request session : sqlalchemy.orm.session.Session kubeflow_userid : fastapi.Header Returns ------- projects.schemas.project.ProjectList """ filters = format_query_params(str(request.query_params)) order_by = filters.pop("order", None) page = filters.pop("page", 1) page = int(page) if page else 1 page_size = filters.pop("page_size", None) page_size = int(page_size) if page_size else 10 project_controller = ProjectController(session, kubeflow_userid=kubeflow_userid) projects = project_controller.list_projects(page=page, page_size=page_size, order_by=order_by, **filters) return projects