- Create Value[T] (frozen dataclass + ABC + Generic) in domain/framework/ - Migrate ClassifiedAdTitle and ClassifiedAdText to inherit Value[str] - Standardize all value access via .value instead of type-specific fields
13 lines
322 B
Python
13 lines
322 B
Python
from dataclasses import dataclass
|
|
|
|
from domain.framework.value import Value
|
|
|
|
|
|
@dataclass(frozen=True)
|
|
class ClassifiedAdTitle(Value[str]):
|
|
def __post_init__(self):
|
|
if len(self.value) > 100:
|
|
raise ValueError(
|
|
f"Title cannot be longer than 100 characters: {self.value}"
|
|
)
|