              pass
  
          kwargs = {self.pk_url_kwarg: obj.pk, self.slug_url_kwarg: slug}
          try:
              return reverse(view_name, kwargs=kwargs, request=request, format=format)
          except NoReverseMatch:
              pass
  
          raise Exception('Could not resolve URL for field using view name "%s"' % view_name)
  
 
</s> remove         kwargs = {self.slug_url_kwarg: slug}
        try:
            return reverse(view_name, kwargs=kwargs, request=request, format=format)
        except NoReverseMatch:
            pass
 </s> add     def get_object(self, queryset, view_name, view_args, view_kwargs):
        """
        Return the object corresponding to a matched URL. </s> remove         if not slug:
            raise Exception('Could not resolve URL for field using view name "%s"' % view_name)
 </s> add         raise NoReverseMatch() </s> remove             pass

        raise Exception('Could not resolve URL for field using view name "%s"' % view_name)
 </s> add             msg = (
                'Could not resolve URL for hyperlinked relationship using '
                'view name "%s". You may have failed to include the related '
                'model in your API, or incorrectly configured the '
                '`lookup_field` attribute on this field.'
            )
            raise Exception(msg % view_name) </s> remove         kwargs = {self.pk_url_kwarg: obj.pk, self.slug_url_kwarg: slug}
 </s> add         Takes the matched URL conf arguments, and the queryset, and should
        return an object instance, or raise an `ObjectDoesNotExist` exception.
        """
        lookup = view_kwargs.get(self.lookup_field, None)
        pk = view_kwargs.get(self.pk_url_kwarg, None)
        slug = view_kwargs.get(self.slug_url_kwarg, None)

        if lookup is not None:
            filter_kwargs = {self.lookup_field: lookup}
        elif pk is not None:
            filter_kwargs = {'pk': pk}
        elif slug is not None:
            filter_kwargs = {self.slug_field: slug}
        else:
            raise ObjectDoesNotExist()

        return queryset.get(**filter_kwargs)

    def to_native(self, obj):
        view_name = self.view_name
        request = self.context.get('request', None)
        format = self.format or self.context.get('format', None)

        if request is None:
            msg = (
                "Using `HyperlinkedRelatedField` without including the request "
                "in the serializer context is deprecated. "
                "Add `context={'request': request}` when instantiating "
                "the serializer."
            )
            warnings.warn(msg, DeprecationWarning, stacklevel=4)

        # If the object has not yet been saved then we cannot hyperlink to it.
        if getattr(obj, 'pk', None) is None:
            return

        # Return the hyperlink, or error if incorrectly configured.
            return self.get_url(obj, view_name, request, format)
              pass
  
          kwargs = {self.pk_url_kwarg: obj.pk, self.slug_url_kwarg: slug}
          try:
            return self.get_url(obj, view_name, request, format)
          except NoReverseMatch:
              pass
  
          raise Exception('Could not resolve URL for field using view name "%s"' % view_name)
  
keep keep keep keep replace keep keep keep keep keep
 lookup_field on hyperlinked fields, and overriddable hyperlinked fields.  Closes #688 
rest_framework/relations.py