Files
swingmusic-extended/swingmusic/models/user.py
T
cwilvx 86fabcd5e3 modularize src
+ merge main.py and manage.py
+ move start logic to swingmusic/__main__.py
+ add a run.py on the project root
2025-05-25 20:35:54 +03:00

29 lines
665 B
Python

from dataclasses import asdict, field, dataclass
import json
@dataclass(slots=True)
class User:
id: int
image: str
password: str
username: str
roles: list[str]
extra: dict[str, str] = field(default_factory=dict)
# NOTE: roles: ['admin', 'user', 'curator']
roles: list[str] = field(default_factory=lambda: ["user"])
def todict(self):
this_dict = asdict(self)
del this_dict["password"]
return this_dict
def todict_simplified(self):
return {
"id": self.id,
"username": self.username,
"firstname": self.extra["firstname"] if self.extra else "",
}