mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-19 09:53:34 -06:00
Fixes #17124: BaseTable should follow reverse one-to-one relationships when prefetching related objects
This commit is contained in:
parent
20967bf88d
commit
9c7002f691
@ -6,6 +6,7 @@ from django.contrib.auth.models import AnonymousUser
|
|||||||
from django.contrib.contenttypes.fields import GenericForeignKey
|
from django.contrib.contenttypes.fields import GenericForeignKey
|
||||||
from django.core.exceptions import FieldDoesNotExist
|
from django.core.exceptions import FieldDoesNotExist
|
||||||
from django.db.models.fields.related import RelatedField
|
from django.db.models.fields.related import RelatedField
|
||||||
|
from django.db.models.fields.reverse_related import ManyToOneRel
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from django.urls.exceptions import NoReverseMatch
|
from django.urls.exceptions import NoReverseMatch
|
||||||
from django.utils.safestring import mark_safe
|
from django.utils.safestring import mark_safe
|
||||||
@ -102,7 +103,7 @@ class BaseTable(tables.Table):
|
|||||||
field = model._meta.get_field(field_name)
|
field = model._meta.get_field(field_name)
|
||||||
except FieldDoesNotExist:
|
except FieldDoesNotExist:
|
||||||
break
|
break
|
||||||
if isinstance(field, RelatedField):
|
if isinstance(field, (RelatedField, ManyToOneRel)):
|
||||||
# Follow ForeignKeys to the related model
|
# Follow ForeignKeys to the related model
|
||||||
prefetch_path.append(field_name)
|
prefetch_path.append(field_name)
|
||||||
model = field.remote_field.model
|
model = field.remote_field.model
|
||||||
|
Loading…
Reference in New Issue
Block a user