title: Django reversed OneToOne relation with select_related
body: <p>I have below model and I want to perform below query:</p>
  
  <pre><code>Post.objects.select_related(
      'previous_post', 'next_post'
  ).get(id=some_id)
  
  
  # models.py
  class Post(models.Model):
      title = models.CharField(max_length=60, unique=True)
      description = models.TextField()
      content = models.TextField()
      previous_post = models.OneToOneField('self', null=True, blank=True,
                                           related_name='next_post',
                                           on_delete=models.PROTECT)
  </code></pre>
  
  <p>For some reason it does not work with <code>next_post</code> parameter, as I get following error:</p>
  
  <p><code>raise IndexError("Number of args exceeds number of fields")
  IndexError: Number of args exceeds number of fields</code></p>
  
  <p>Theoretically I can live without <code>select_related</code>, but I would prefer not to give up it in this case and I am really curious whether I am doing something wrong or this is just a Django bug.</p>
  
  <p>Full traceback:</p>
  
  <pre><code>Traceback (most recent call last):
    File "&lt;console&gt;", line 1, in &lt;module&gt;
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/query.py", line 381, in get
      num = len(clone)
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/query.py", line 240, in __len__
      self._fetch_all()
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/query.py", line 1074, in _fetch_all
      self._result_cache = list(self.iterator())
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/query.py", line 72, in __iter__
      rel_populator.populate(row, obj)
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/query.py", line 1715, in populate
      obj = self.model_cls.from_db(self.db, self.init_list, obj_data)
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/base.py", line 460, in from_db
      new = cls(*values)
    File "/home/konrad/PycharmProjects/jdg/env/lib/python3.4/site-packages/django/db/models/base.py", line 372, in __init__
      raise IndexError("Number of args exceeds number of fields")
  IndexError: Number of args exceeds number of fields
  </code></pre>