|
@@ -24,18 +24,6 @@ BNULL = {"blank": True, "null": True}
|
|
|
User = get_user_model()
|
|
|
|
|
|
|
|
|
-@dataclass
|
|
|
-class VideoGameLogData(BaseLogData, LongPlayLogData, WithPeopleLogData):
|
|
|
- platform_id: Optional[int] = None
|
|
|
- emulated: Optional[bool] = False
|
|
|
- emulator: Optional[str] = None
|
|
|
-
|
|
|
- def platform(self):
|
|
|
- if not self.platform_id:
|
|
|
- return
|
|
|
- return VideoGamePlatform.objects.filter(id=self.platform_id).first()
|
|
|
-
|
|
|
-
|
|
|
class VideoGamePlatform(TimeStampedModel):
|
|
|
name = models.CharField(max_length=255)
|
|
|
uuid = models.UUIDField(default=uuid4, editable=False, **BNULL)
|
|
@@ -51,6 +39,19 @@ class VideoGamePlatform(TimeStampedModel):
|
|
|
)
|
|
|
|
|
|
|
|
|
+@dataclass
|
|
|
+class VideoGameLogData(BaseLogData, LongPlayLogData, WithPeopleLogData):
|
|
|
+ platform_id: Optional[int] = None
|
|
|
+ emulated: Optional[bool] = False
|
|
|
+ emulator: Optional[str] = None
|
|
|
+
|
|
|
+ @property
|
|
|
+ def platform(self) -> VideoGamePlatform | None:
|
|
|
+ if not self.platform_id:
|
|
|
+ return
|
|
|
+ return VideoGamePlatform.objects.filter(id=self.platform_id).first()
|
|
|
+
|
|
|
+
|
|
|
class VideoGameCollection(TimeStampedModel):
|
|
|
name = models.CharField(max_length=255)
|
|
|
uuid = models.UUIDField(default=uuid4, editable=False, **BNULL)
|