code: def _update_fields(self, obj=None, many=False):
          
          fields = super()._update_fields(obj, many)
          new_fields = self.dict_class()
          for name, field in fields.items():
              if (field.dump_to is None
                      and not name.startswith('_')
                      and '_' in name):
                  camel_cased_name = camel_case(name)
                  field.dump_to = camel_cased_name
                  field.load_from = camel_cased_name
              if name in READ_ONLY_FIELDS:
                  field.dump_only = True
              new_fields[name] = field
  
          # validate id
          if 'id' in new_fields:
              new_fields['id'].validators = [self.validate_id]
  
          self.fields = new_fields
          return new_fields
docs: Overridden to automatically convert snake-cased field names to
          camel-cased (when dumping) and to load camel-cased field names back
          to their snake-cased counterparts