code: def detach(self, attachments):
          
          if not is_iterable(attachments, generators_allowed=True):
              attachments = [attachments]
          for a in attachments:
              if a.parent_item is not self:
                  raise ValueError('Attachment does not belong to this item')
              if self.id:
                  # Item is already created. Detach  the attachment server-side now
                  a.detach()
              if a in self.attachments:
                  self.attachments.remove(a)
docs: Remove an attachment, or a list of attachments, from this item. If the item has already been saved, the
          attachments will be deleted on the server immediately. If the item has not yet been saved, the attachments will
          simply not be created on the server the item is saved.
  
          Removing attachments from an existing item will update the changekey of the item.