def METHOD_NAME(self, files, instance, **kwargs):
    """
    Save files and associate with instance.
    Return list of files saved.
    """
    from django.contrib.auth.models import User
    try:  # explicit user; default to admin
        user = kwargs.get('user') or User.objects.get(id=1)
    except User.DoesNotExist:
        return []
    # loop; save file; save file record in db
    # ----------------------------------------
    files_saved = []
    for file in files:
        # what to save; where to save it
        file.file.seek(0)
        file_path = save_to_disk(file, instance)
        # update file record; or create new file record
        # ----------------------------------------------
        instance_pk = None
        if isinstance(instance.pk, int):
            instance_pk = instance.pk
        try:
            file = self.get(file=file_path)
            file.name = re.sub(r'[^a-z0-9._]+', '_', file.name.lower())
            file.owner = user
            file.owner_username = user.username
            file.update_dt = datetime.now()
        except:
            file = self.model(**{
                'file':file_path,
                'name':file.name,
                'content_type':ContentType.objects.get_for_model(instance),
                'object_id':instance_pk,
                'creator':user,
                'creator_username':user.username,
                'owner':user,
                'owner_username':user.username,
            })
        file.save() # auto generate GUID if missing
        files_saved.append(file)
    return files_saved