docs: def save(self, *args, **kwargs):
          """
          BUG: Django save-the-change, which all oTree models inherit from,
          doesn't recognize changes to JSONField properties. So saving the model
          won't trigger a database save. This is a hack, but fixes it so any
          JSONFields get updated every save. oTree uses a forked version of
          save-the-change so a good alternative might be to fix that to recognize
          JSONFields (diff them at save time, maybe?).
          """
          super().save(*args, **kwargs)
          if self.pk is not None:
              update_fields = kwargs.get('update_fields')
              json_fields = {}
              for field in self._meta.get_fields():
                  if isinstance(field, JSONField) and (update_fields is None or field.attname in update_fields):
                      json_fields[field.attname] = getattr(self, field.attname)
              self.__class__._default_manager.filter(pk=self.pk).update(**json_fields)