Google Picker делает копию при загрузке - PullRequest
0 голосов
/ 18 мая 2018

Я реплицировал средство выбора файлов Google в веб-приложении.

Мой вопрос заключается в том, как мне указать средству выбора Google сделать копию файлапри загрузке его на Google Drive?

Любая помощь будет высоко ценится.

1 Ответ

0 голосов
/ 21 мая 2018

Я понял, что Google Picker не может сделать то, что мне нужно, поэтому Google App Script на помощь.

  • Во-первых, вам нужно создать новую электронную таблицу Google
  • В разделе "Инструменты-> Редактор сценариев "добавьте следующий код

Мысль пробная ошибка Я пришла к следующему.

function copyFiles() {

   var dApp = DriveApp; // Get the drive app
   var folderIter = dApp.getFoldersByName('parentFolder'); //Get folder my id
   var folder = folderIter.next(); // Get the first folder
   var fileIter = folder.getFiles(); // File iterator

   var storageFolder = folder.getFoldersByName('childFolder').next(); // Get target folder
   var subFolderIter = storageFolder.getFiles(); // sub folder File iterator

   while(fileIter.hasNext()) { 

      var file = fileIter.next();  // Get the current File
      var fileName = file.getName();

     // Check if the current file exists in a coped folder
     // If false make a copy  else do noting
     // This check prevents duplicate, Becasue makeCopy generates uniques ID everytime
     if(!storageFolder.getFilesByName(fileName).hasNext()) {
         //Logger.log('Files does NOT exists');
        file.makeCopy(storageFolder);
     } else {
      //Logger.log('Files does exists');
     }

   }
}

Надеюсь, это поможет всем, кто может нуждаться.

Примечание. Вам потребуется настроить триггеры для запуска сценария при необходимости

...