  
      def validate(self, value, model_instance):
          super(HStoreField, self).validate(value, model_instance)
          for key, val in value.items():
              if not isinstance(val, six.string_types) and val is not None:
                  raise exceptions.ValidationError(
                      self.error_messages['not_a_string'],
                      code='not_a_string',
                      params={'key': key},
                  )
 
</s> remove                 val = six.text_type(val)
 </s> add                 val = str(val) </s> remove             u_params = tuple(to_unicode(val) for val in params)
 </s> add             u_params = tuple(to_string(val) for val in params) </s> remove                 not isinstance(self.remote_field.model, six.string_types) and
 </s> add                 not isinstance(self.remote_field.model, str) and </s> remove         if isinstance(value, six.string_types):
 </s> add         if isinstance(value, str): </s> remove         if self.flags and not isinstance(self.regex, six.string_types):
 </s> add         if self.flags and not isinstance(self.regex, str):
            if not isinstance(val, str) and val is not None:
  
      def validate(self, value, model_instance):
          super(HStoreField, self).validate(value, model_instance)
          for key, val in value.items():
            if not isinstance(val, str) and val is not None:
                  raise exceptions.ValidationError(
                      self.error_messages['not_a_string'],
                      code='not_a_string',
                      params={'key': key},
                  )
keep keep keep keep replace keep keep keep keep keep
 Refs #23919 -- Removed six.<various>_types usage

Thanks Tim Graham and Simon Charette for the reviews. 
django/contrib/postgres/fields/hstore.py