code: def _convert_value(self, value, model_instance, add):
          
  
          if not value:
              return value
  
          # Retrieve the default timezone as the default
          tz = get_default_timezone()
  
          # If populate_from exists, override the default timezone
          if self.populate_from is not None:
              tz = self._get_populate_from(model_instance)
  
          if is_naive(value):
              value = make_aware(value=value, timezone=tz)
  
          # Convert the value to a datetime object in the correct timezone. This
          #   insures that we will have the correct date if we are performing a
          #   time override below.
          value = value.astimezone(tz)
  
          # Do not convert the time to the time override if auto_now or
          #   auto_now_add is set
          if self.time_override is not None and not (
              self.auto_now or (self.auto_now_add and add)
          ):
              # Retrieve the time override
              time_override = self._get_time_override()
  
              # Convert the value to the date/time with the appropriate timezone
              value = make_aware(
                  value=datetime.combine(
                      date=value.date(),
                      time=time_override
                  ),
                  timezone=tz
              )
  
          return value
docs: Converts the value to the appropriate timezone and time as declared by
          the `time_override` and `populate_from` attributes.