title: Unable to assign user to a model object which changed the model object
body: <p>I am using <code>django-simple-history</code> to maintain history of my model changes.</p>
  
  <p>I am trying to associate user changing the service object using the way proposed <a href="https://django-simple-history.readthedocs.io/en/latest/user_tracking.html#using-history-user-to-record-which-user-changed-a-model" rel="nofollow noreferrer">here</a></p>
  
  <p><strong>models.py</strong></p>
  
  <pre><code>class UserTrackMixin(models.Model):
  
      changed_by = models.ForeignKey(User, null=True, on_delete=models.DO_NOTHING)
  
      @property
      def _history_user(self):
          return self.changed_by
  
      @_history_user.setter
      def _history_user(self, value):
          self.changed_by = value
  
      class Meta:
          abstract = True
  
  
  class Service(BaseModel, UserTrackMixin):
      name = models.CharField(max_length=200)
      serviceType = models.CharField(max_length=200)
  
      history = HistoricalRecords()
  </code></pre>
  
  <p>But, when i am trying to assign user object to the attribute <code>_history_user</code> to service object it gives error as mentioned below.</p>
  
  <pre><code>u1=User.objects.first()
  &lt;User: User object (07ab8565-26c7-4bfa-a92e-e12bf924160a)&gt;
  s._history_user = u1
  s.save()
  
  ValueError: Cannot assign "&lt;User: User object (07ab8565-26c7-4bfa-a92e-e12bf924160a)&gt;": "HistoricalService.history_user" must be a "User" instance.
  </code></pre>
  
  <p>Then i tried this :</p>
  
  <pre><code>s.changed_by = u1
  s.save()
  </code></pre>
  
  <p>This also gave the same error.</p>
  
  <p><strong><code>u1</code> is User instance, then why does it give this error ?</strong></p>