﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
29458	Documentation incorrectly says Model._meta.get_field() uses related_name instead of related_query_name	Tomasz Knapik	Jeff	"The [https://docs.djangoproject.com/en/2.1/ref/models/meta/#django.db.models.options.Options.get_field documentation] seems to mention that `get_field` should use `related_name`, but when `related_query_name` is defined, it uses that instead.

Let's say in situation like this...

{{{#!python
from django.db import models


class ModelA(models.Model):
    test_model = models.ForeignKey('ModelB', models.CASCADE,
                                   related_name='model_a_related_name',
                                   related_query_name='model_a_related_q_name')


class ModelB(models.Model):
    some_field = models.CharField(max_length=255)
}}}

Using `get_field` with value from `related_name`.
{{{#!python
>>> from testapp.models import ModelB
>>> ModelB._meta.get_field('model_a_related_name')
Traceback (most recent call last):
  File ""/home/tomaszk/Projects/testsite/venv/lib64/python3.6/site-packages/django/db/models/options.py"", line 566, in get_field
    return self.fields_map[field_name]
KeyError: 'model_a_related_name'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File ""<console>"", line 1, in <module>
  File ""/home/tomaszk/Projects/testsite/venv/lib64/python3.6/site-packages/django/db/models/options.py"", line 568, in get_field
    raise FieldDoesNotExist(""%s has no field named '%s'"" % (self.object_name, field_name))
django.core.exceptions.FieldDoesNotExist: ModelB has no field named 'model_a_related_name'
>>> 
}}}

But this will work.

{{{#!python
>>> ModelB._meta.get_field('model_a_related_q_name')
<ManyToOneRel: testapp.modela>
}}}"	Bug	closed	Documentation	2.1	Normal	fixed		Aram Dulyan	Accepted	1	0	0	0	0	0
