wip: courses

This commit is contained in:
swve 2023-11-14 17:48:10 +01:00
parent afa8e4ea98
commit ee07f49139
8 changed files with 334 additions and 378 deletions

View file

@ -1,29 +1,43 @@
from typing import Optional
from sqlmodel import Field, SQLModel
class CourseBase(SQLModel):
name: str
description: Optional[str] = ""
about: Optional[str] = ""
course_slug: str
learnings: Optional[str] = ""
tags: Optional[str] = ""
thumbnail_image: Optional[str] = ""
description: Optional[str]
about: Optional[str]
learnings: Optional[str]
tags: Optional[str]
thumbnail_image: Optional[str]
public: bool
class Course(CourseBase, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
org_id: int = Field(default=None, foreign_key="organization.id")
course_uuid: str
creation_date: str
update_date: str
course_uuid: str = ""
creation_date: str = ""
update_date: str = ""
class CourseCreate(CourseBase):
org_id: int = Field(default=None, foreign_key="organization.id")
pass
class CourseUpdate(CourseBase):
course_id: int
name: str
description: Optional[str]
about: Optional[str]
learnings: Optional[str]
tags: Optional[str]
public: Optional[bool]
class CourseRead(CourseBase):
id: int
course_uuid: str
creation_date: str
update_date: str
pass
pass

View file

@ -12,7 +12,7 @@ class RoleTypeEnum(str, Enum):
class RoleBase(SQLModel):
name: str
description: Optional[str] = ""
description: Optional[str]
rights: dict = Field(default={}, sa_column=Column(JSON))
@ -31,6 +31,6 @@ class RoleCreate(RoleBase):
class RoleUpdate(SQLModel):
role_id: int = Field(default=None, foreign_key="role.id")
name: Optional[str] = ""
description: Optional[str] = ""
name: Optional[str]
description: Optional[str]
rights: Optional[dict] = Field(default={}, sa_column=Column(JSON))

View file

@ -36,6 +36,10 @@ class UserRead(UserBase):
class PublicUser(UserRead):
pass
class AnonymousUser(UserRead):
id: str = "anonymous"
username: str = "anonymous"
class User(UserBase, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
password: str = ""