title: Reverse select_related for onetoone field not working
body: <p>According to the docs then you should be able to catch reverse relations when those relations are onetoone with a select_related(). But it is not working, so what could I be missing?</p>
  
  <p>My class looks like this:</p>
  
  <pre><code>class MainPage(models.Model):
      book = models.OneToOneField(Book, primary_key=True)
      text = models.TextField(blank=True)
  </code></pre>
  
  <p>I can do this fine:</p>
  
  <pre><code>book = Book.objects.get(id=book_id, active=True)
  main_page = book.mainpage
  </code></pre>
  
  <p>But doing like so does not lower the database calls:</p>
  
  <pre><code>book = Book.objects.select_related('mainpage').get(id=book_id, active=True)
  main_page = book.mainpage
  </code></pre>