mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-01-23 15:54:16 +03:00
Added ability to define backend identification attribute
This commit is contained in:
parent
c9618cc0f3
commit
8a58b1a380
|
@ -166,6 +166,7 @@ class HyperlinkedRelatedField(RelatedField):
|
|||
self.lookup_field = kwargs.pop('lookup_field', self.lookup_field)
|
||||
self.lookup_url_kwarg = kwargs.pop('lookup_url_kwarg', self.lookup_field)
|
||||
self.format = kwargs.pop('format', None)
|
||||
self.id_field = kwargs.pop('id_field', 'pk')
|
||||
|
||||
# We include this simply for dependency injection in tests.
|
||||
# We can't add it as a class attributes or it would expect an
|
||||
|
@ -196,7 +197,7 @@ class HyperlinkedRelatedField(RelatedField):
|
|||
attributes are not configured to correctly match the URL conf.
|
||||
"""
|
||||
# Unsaved objects will not yet have a valid URL.
|
||||
if obj.pk is None:
|
||||
if getattr(obj, self.id_field) is None:
|
||||
return None
|
||||
|
||||
lookup_value = getattr(obj, self.lookup_field)
|
||||
|
|
Loading…
Reference in New Issue
Block a user