Browse Source

[scrobbles] Fix when scrobble has not dict

Colin Powell 9 months ago
parent
commit
ed917e16fc
1 changed files with 5 additions and 0 deletions
  1. 5 0
      vrobbler/apps/scrobbles/models.py

+ 5 - 0
vrobbler/apps/scrobbles/models.py

@@ -542,6 +542,7 @@ class Scrobble(TimeStampedModel):
     source = models.CharField(max_length=255, **BNULL)
     source = models.CharField(max_length=255, **BNULL)
     log = models.JSONField(
     log = models.JSONField(
         **BNULL,
         **BNULL,
+        default=dict,
         encoder=logdata.ScrobbleLogDataEncoder,
         encoder=logdata.ScrobbleLogDataEncoder,
         decoder=logdata.ScrobbleLogDataDecoder,
         decoder=logdata.ScrobbleLogDataDecoder,
     )
     )
@@ -626,6 +627,10 @@ class Scrobble(TimeStampedModel):
                 extra={"log": self.log},
                 extra={"log": self.log},
             )
             )
             log_dict = json.loads(self.log)
             log_dict = json.loads(self.log)
+
+        if not log_dict:
+            log_dict = {}
+
         return self.media_obj.logdata_cls.from_dict(log_dict)
         return self.media_obj.logdata_cls.from_dict(log_dict)
 
 
     def redirect_url(self, user_id) -> str:
     def redirect_url(self, user_id) -> str: