title: Django: How to define a ForeignKey to User OR to another model?
body: <p>I'm building a site for people doing maintenance tasks in properties. The user can have clients and can perform maintenance tasks both in his properties and in his client's properties. How can I define the ownership of the property to be User OR Client?</p>
  
  <p>My models should be something like this:</p>
  
  <pre><code>class Client(models.Model):
      name = models.Charfield(max_length=100)
      user = models.ForeignKey(User)
  
  class Property(models.Model):
      name = models.Charfield(max_length=100)
      owner = models.ForeignKey(User OR Client)
  
  class MaintenanceTask(models.Model):
      name = models.Charfield(max_length=100)
      property = models.ForeignKey(Property)
  </code></pre>
  
  <p>Obvliously, <code>owner = models.ForeignKey(User OR Client)</code> is not correct. How can I solve this problem?</p>
  
  <p>And the general question:
  <strong>How can I define a ForeignKey to User OR to another model?</strong></p>