Skip to content

Commit b95e5da

Browse files
committed
Fix RelatedField rendering wrong domain in hrefs
(cherry picked from commit 816a633)
1 parent 54f70d0 commit b95e5da

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

CHANGES/7835.bugfix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fixed `RelatedField` rendering wrong domain in hrefs when `DOMAIN_ENABLED=True`.

pulpcore/app/serializers/base.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,16 @@ def _patched_reverse(viewname, request=None, args=None, kwargs=None, **extra):
6767
class HrefPrnFieldMixin:
6868
"""A mixin to configure related fields to generate relative hrefs and accept PRNs."""
6969

70+
def use_pk_only_optimization(self):
71+
"""Disable DRF's PK-only optimization when domains are enabled.
72+
73+
DRF's optimization passes a PKOnlyObject (no pulp_domain) to get_url,
74+
causing _reverse to fall back to the default domain.
75+
"""
76+
if settings.DOMAIN_ENABLED:
77+
return False
78+
return super().use_pk_only_optimization()
79+
7080
def get_url(self, obj, view_name, request, *args, **kwargs):
7181
# Use the Pulp reverse method to display relative hrefs.
7282
self.reverse = _reverse(obj)

0 commit comments

Comments
 (0)