gpt4 book ai didi

google-apps-script - 用于自动制作 Google 文档副本以供编辑的脚本

转载 作者:行者123 更新时间:2023-12-03 20:15:20 26 4
gpt4 key购买 nike

我觉得在这里发帖完全是个菜鸟。我非常了解 CSS、HTML 和 XML,但一直避免使用 JS。我对 javascript 知之甚少,最近开始了 Lynda.com 类(class)来 catch 。对不起我的无知。因此,我真的很难学习 Google Apps 脚本。显然,我需要先学习 JS,然后才能理解其中的任何内容。

我工作的学校(5000 名学生)设置了在线类(class)。我以数千个谷歌文档工作表的形式创建了类(class)。这些工作表链接在各种网站上。

我们面临的问题是,当学生打开文档时,他们必须先复制它们才能编辑它们(我当然不希望他们能够编辑原件)。这对于在平板电脑上使用移动浏览器的学生来说真的很糟糕,因为在移动设备上使用桌面 UI 时,在 Google Docs 中制作副本并不能很好地工作。

我知道这种事情可以用脚本自动化。我看过 here ,并且低,看,它的工作原理!三年来我一直在寻找这样的功能,我高兴得尿了裤子。 (是的,我知道这很可悲)。

所以,我要问的是,有人愿意帮助菜鸟弄清楚如何调整此代码,以便学生单击网站类(class)上的按钮,它会自动制作并在新选项卡中打开工作表的副本吗?

/**
* Copy an existing file.
*
* @param {String} originFileId ID of the origin file to copy.
* @param {String} copyTitle Title of the copy.
*/
function copyFile(originFileId, copyTitle) {
var body = {'title': copyTitle};
var request = gapi.client.drive.files.copy({
'fileId': originFileId,
'resource': body
});
request.execute(function(resp) {
console.log('Copy ID: ' + resp.id);
});
}

昨天花了一整天的时间学习 Javascript,我还有很长的路要走。不知道我需要多长时间才能自己解决这个问题。

最佳答案

您当然可以使用 Apps 脚本来做到这一点。只需要几行。事实上,你可以只使用我在下面写的版本。

这是我的做法 -

  • 确保您的原始文档至少已为将要访问它的人启用。

    Access rights
  • 从 URL 中获取 fileId -

    enter image description here
  • 写一个web app在 Apps 脚本中使用以下代码 -
    function doGet(e) {
    //file has to be at least readable by the person running the script
    var fileId = e.parameters.fileId;
    if(!fileId){
    //have a default fileId for testing.
    fileId = '1K7OA1lnzphJRuJ7ZjCfLu83MSwOXoEKWY6BuqYitTQQ';
    }
    var newUrl = DocsList.getFileById(fileId).makeCopy('File copied to my drive').getUrl();
    return HtmlService.createHtmlOutput('<h1><a href="'+newUrl+'">Open Document</a></h1>');
    }
  • 将其部署为以访问应用程序的人的身份运行。

    deploy settings

  • 要记住的关键一件事是,由 Apps 脚本构建的网络应用程序不能强制自动打开一个新窗口。相反,我们可以在编辑模式下显示一个可点击进入文档的链接。

    您可以在这里看到它的实际效果(将创建一些虚拟文件) -

    https://script.google.com/macros/s/AKfycbyvxkYqgPQEb3ICieywqWrQ2-2KWb-V0MghR2xayQyExFgVT2h3/exec?fileId=0AkJNj_IM2wiPdGhsNEJzZ2RtZU9NaHc4QXdvbHhSM0E

    您可以通过输入自己的 fileId 来测试它。 .

    关于google-apps-script - 用于自动制作 Google 文档副本以供编辑的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13221922/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com