forked from sr2/cloud-api
feat: schema mixins moved to project level
Resolves circular dependency issues.
This commit is contained in:
parent
e9fe405e06
commit
4ff9edf6d1
6 changed files with 38 additions and 43 deletions
|
|
@ -3,7 +3,6 @@ Pydantic models for the IAM module
|
|||
|
||||
Models follow the nomenclature of:
|
||||
- Sub-models: "<Resource><Opt:>Schema"
|
||||
- Mixins: "<Attribute>Mixin"
|
||||
- Models: "<Module><Method><Resource><Opt:Resource><Direction>" ie "IAMGetGroupPermissionsResponse"
|
||||
"""
|
||||
|
||||
|
|
@ -11,10 +10,14 @@ from typing import Optional, Annotated
|
|||
|
||||
from pydantic import EmailStr, ConfigDict, Field
|
||||
|
||||
from src.service.schemas import ServiceIDMixin
|
||||
from src.organisation.schemas import OrgIDMixin
|
||||
from src.schemas import CustomBaseModel
|
||||
from src.user.schemas import UserIDMixin
|
||||
from src.schemas import (
|
||||
CustomBaseModel,
|
||||
ServiceIDMixin,
|
||||
OrgIDMixin,
|
||||
UserIDMixin,
|
||||
PermIDMixin,
|
||||
GroupIDMixin,
|
||||
)
|
||||
|
||||
|
||||
class UserSchema(CustomBaseModel):
|
||||
|
|
@ -39,14 +42,6 @@ class GroupSchema(CustomBaseModel):
|
|||
name: str
|
||||
|
||||
|
||||
class GroupIDMixin(CustomBaseModel):
|
||||
group_id: int = Field(gt=0)
|
||||
|
||||
|
||||
class PermIDMixin(CustomBaseModel):
|
||||
permission_id: int = Field(gt=0)
|
||||
|
||||
|
||||
class IAMGetGroupPermissionsResponse(CustomBaseModel):
|
||||
permissions: list[PermissionSchema]
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue