code: def filer_has_permission(context, item, action):
      
      permission_method_name = 'has_{action}_permission'.format(action=action)
      permission_method = getattr(item, permission_method_name, None)
      request = context.get('request')
  
      if not permission_method or not request:
          return False
      # Call the permission method.
      # This amounts to calling `item.has_X_permission(request)`
      return permission_method(request)
docs: Does the current user (taken from the request in the context) have
      permission to do the given action on the given item.