title: How to order by a specific ForeignKey in django?
body: <p>This is a kinda follow-up of this question: <a href="https://stackoverflow.com/questions/54932662/how-to-store-a-variable-history-in-django/54932709#54932709">How to store a variable history in django?</a></p>
  
  <p>To simplify my problem, let's say I have a simple Gamer that track users settings and data, and a specific UserScore model to track a tuple of <code>(time, score)</code>.</p>
  
  <pre><code>class GamerExperience(BasicModelProperties):
      gamer = models.ForeignKey('Gamer', on_delete=models.CASCADE, related_name='experience_history')
      time = models.DateTimeField()
      experience = models.BigIntegerField()
  </code></pre>
  
  <p>I would like to order every Gamer in the database by the highest (latest-score). Note that my Gamer model has a property that returns the latest score using <code>self.experience_history.order_by("-time").first().experience</code></p>
  
  <p>However, using sorted is really slow, and I'm sure there is another way to achieve that :)</p>