google-apps-script - 使用脚本更改文件名后如何更新 Google 表单显示
问题描述
我正在使用带有多个子部分(多项选择,简答...)和一个上传文件框的 Google 表单。
当我上传文件时,登录用户的名称会添加到文件名中。我不想要这个。
所以我用谷歌脚本来改名字,文件夹目录下没问题(文件名更新正确),但在谷歌表单显示(“响应”部分),老名字总是有的。
如何强制刷新表单显示?
这是我的脚本:
function myFunction() {
var existingForm = FormApp.getActiveForm();
var formResponses = existingForm.getResponses();
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
var itemResponses = formResponse.getItemResponses();
for (var j = 0; j < itemResponses.length; j++) {
var itemResponse = itemResponses[j];
var title = itemResponse.getItem().getTitle();
var files = itemResponse.getResponse();
for (var n in files) {
var my_file = files[n];
var dFile = DriveApp.getFileById(my_file);
var dFileName = dFile.getName();
dFile.setName("New name " + n);
}
}
}
}
谢谢你的帮助
解决方案
检查可用方法和表单设置后,即使目录/文件夹中的实际文件已重命名,也无法更改响应下的文件名。
即使是 Forms UI 也没有提供任何方式来重命名Responses下上传的文件名,因此 Apps 脚本也不太可能支持它。
推荐阅读
- javascript - 我的网站在 3 次操作后无限期加载
- r - Error_Message:包含错误的系数/变量名称
- macos - 上下文菜单中的 MacOS 快速操作或服务自动机不是快速操作上下文子菜单
- flutter - 如何修复 Flutter 中 DeepAR 的 pod 安装错误
- pandas - Pandas Dataframe 转换 - 了解我应该使用的功能和我应该选择的逻辑的问题
- python-3.x - 在Python中获取给定坐标(纬度和经度)的大陆
- elasticsearch - 特征给出错误的弹性 EQL 后代
- javascript - Vue 2:将空类设置为数据属性
- javascript - 每个 id 的嵌套对象求和
- node.js - 如何摆脱双箭头函数上未使用的变量警告?