31 lines
797 B
Python
31 lines
797 B
Python
# python
|
|
from dataclasses import dataclass
|
|
from models.base import BaseModel
|
|
|
|
@dataclass
|
|
class Image(BaseModel):
|
|
type: int
|
|
extension: str
|
|
permanent: bool = False
|
|
|
|
@classmethod
|
|
def from_dict(cls, d: dict):
|
|
# Supports overriding base fields (id, created_at, updated_at) if present
|
|
return cls(
|
|
type=d.get('type'),
|
|
extension=d.get('extension'),
|
|
permanent=d.get('permanent', False),
|
|
id=d.get('id'),
|
|
created_at=d.get('created_at'),
|
|
updated_at=d.get('updated_at')
|
|
)
|
|
|
|
def to_dict(self):
|
|
base = super().to_dict()
|
|
base.update({
|
|
'type': self.type,
|
|
'permanent': self.permanent,
|
|
'extension': self.extension
|
|
})
|
|
return base
|