  
  
  class PKOnlyObject(object):
      """
      This is a mock object, used for when we only need the pk of the object
      instance, but still want to return an object with a .pk attribute,
 
</s> remove             return self.get_url(value, self.view_name, request, format)
 </s> add             url = self.get_url(value, self.view_name, request, format) </s> remove         template = loader.get_template('rest_framework/admin/list_value.html')
 </s> add         if any([isinstance(item, (list, dict)) for item in value]):
            template = loader.get_template('rest_framework/admin/list_value.html')
        else:
            template = loader.get_template('rest_framework/admin/simple_list_value.html')
class Hyperlink(six.text_type):
    """
    A string like object that additionally has an associated name.
    We use this for hyperlinked URLs that may render as a named link
    in some contexts, or render as a plain URL in others.
    """
    def __new__(self, url, name):
        ret = six.text_type.__new__(self, url)
        ret.name = name
        return ret

    is_hyperlink = True


  
  
class Hyperlink(six.text_type):
    """
    A string like object that additionally has an associated name.
    We use this for hyperlinked URLs that may render as a named link
    in some contexts, or render as a plain URL in others.
    """
    def __new__(self, url, name):
        ret = six.text_type.__new__(self, url)
        ret.name = name
        return ret

    is_hyperlink = True


  class PKOnlyObject(object):
      """
      This is a mock object, used for when we only need the pk of the object
      instance, but still want to return an object with a .pk attribute,
keep add keep keep keep keep
 Add Hyperlink and rendering in admin style renderer 
rest_framework/relations.py