编码水平:初级
时长:10 分钟
项目类型:使用事件驱动型触发器实现自动化
目标
- 了解解决方案的功能。
- 了解 Apps 脚本服务在解决方案中的作用。
- 设置脚本。
- 运行脚本。
关于此解决方案
使用 Google 表单同时在 Google 云端硬盘中上传和整理文件。 该表单包含用于上传文件的输入,以及用于指定文件整理方式的输入。
运作方式
使用函数创建一个用于存储所有上传的文件的文件夹,以及每次有人提交表单时会触发的触发器。用户填写表单时,他们会选择要上传的文件以及存储文件的子文件夹。用户提交表单后,脚本会将文件放入相应的子文件夹。如果文件夹尚不存在,脚本会创建该文件夹。
Apps 脚本服务
此解决方案使用以下服务:
- 脚本服务 - 创建每次有人提交表单时都会触发的触发器。
- 属性服务 - 存储脚本在设置期间创建的触发器的 ID,以防止出现重复的触发器。
- 云端硬盘服务 - 在设置期间,获取表单在云端硬盘中的位置,并在同一位置创建文件夹。当用户提交表单时,云端硬盘服务会将文件放入该文件夹,如果选择了子文件夹,则会将文件放入指定的子文件夹。如果子文件夹尚不存在,脚本会创建该子文件夹。
- 表单服务 - 获取用户在提交表单后选择的文件和文件夹名称,并将其发送到云端硬盘服务。
前提条件
如需使用此示例,您需要满足以下前提条件:
- Google 账号(Google Workspace 账号可能需要管理员批准)。
- 可访问互联网的网络浏览器。
设置脚本
创建表单
- 前往 forms.google.com,然后点击“空白”图标 。
- 点击无标题表单,然后将表单重命名为将文件上传到云端硬盘。
- 点击未命名的问题,然后将问题重命名为子文件夹。
- 在子文件夹问题上,依次点击“更多”图标 > 说明。
- 在说明中,输入选择要用来存储文件的子文件夹。如果您选择 <无>,文件将存储在“上传的文件”文件夹中。
- 向子文件夹问题添加以下选项:
- <无>
- 项目 A
- 项目 B
- 项目 C
- 如需将问题设为必答题,请点击必答。
- 点击“添加问题”图标 。
- 点击多项选择,然后选择文件上传。
- 点击继续。
- 对于问题,请输入要上传的文件。您可以选择允许用户上传的文件类型和文件数量上限。
- 如需将问题设为必答题,请点击必答。
创建 Apps 脚本项目
- 在表单中,依次点击“更多”图标 > 脚本编辑器。
- 点击未命名项目,然后将项目重命名为将文件上传到云端硬盘。
- 如需创建其他脚本文件,请依次点击“添加文件”图标 > 脚本。将文件命名为
Setup
。 将这两个脚本文件的内容替换为以下内容:
Code.gs
Setup.gs
运行脚本
- 在 Apps 脚本编辑器中,切换到
Setup.gs
文件。 - 在函数下拉菜单中,选择
setUp
。 - 点击运行。
根据提示为脚本授权。 如果 OAuth 权限请求页面显示警告此应用未经过验证,请继续操作,依次选择高级 > 前往“{项目名称}”(不安全)。
返回到表单,然后点击“预览”图标
。
在表单中,选择一个子文件夹并上传文件。
点击提交。
前往云端硬盘,然后打开将文件上传到云端硬盘(文件回复)文件夹。 您上传的文件位于您在表单中选择的子文件夹中。
贡献者
此示例由 Google 在 Google 开发者专家的帮助下维护。