title: Django get foreign key object inside Queryset
body: <p>I have 3 models:</p>
  
  <pre><code>class Event(models.Model):
      cur_datetime = models.DateTimeField(default=datetime.datetime(1970, 1, 1, 0, 0, 0, 0, pytz.UTC), blank=True, null=True)
      week_no = models.IntegerField()
      day_no = models.IntegerField()
  
  class SubEvent(models.Model):
      event = models.ForeignKey(Event, on_delete=models.CASCADE)
      version = models.IntegerField()
  
  class SubSubEvent(models.Model):
      sub_event = models.ForeignKey(SubEvent, on_delete=models.CASCADE)
      length = models.IntegerField()
  </code></pre>
  
  <p>I want to get a Queryset from <code>SubSubEvent</code> model, which includes all the Foreign keys as one single object. What I have now is:</p>
  
  <pre><code>querySet = SubSubEvent.objects.filter(sub_event__event__cur_datetime__range=[from_date, to_date])
  </code></pre>
  
  <p>This will return a queryset, and using a for loop to get <code>__dict__</code> on each of objects, I get something like this:</p>
  
  <pre><code>{'event_id': 1, '_state': &lt;django.db.models.base.ModelState object at 0x7fd7d9cefeb8&gt;, 'id': 10, 'length': '1'}
  </code></pre>
  
  <p>This is just a part of the query I want to achieve. What I really want, is all the fields in <code>event_id</code> instead of just the <code>id</code> number. In other word, all the fields (including data) from <code>Event</code> plus <code>SubEvent</code> plus <code>SubSubEvent</code> in one queryset. This queryset should contains objects with cur_datetime, week_no, day_no, version and length.</p>