Перемещение файла или папки с помощью DriveApp - PullRequest
0 голосов
/ 21 января 2019

Неужели нет способа переместить файл или папку с помощью класса DriveApp?

Из того, что я мог собрать на документах и ​​на StackOverflow, отвечал на вопросы, все предложенные реализации, кажется, копируют файл в другое место, а затем удаляют исходный файл. Это может привести как минимум к двум проблемам:

  • Файл / папка с другим идентификатором папки в месте назначения;
  • Файл / папка дублируются и хранятся в Google Vault неограниченное время в соответствии с политикой хранения.

Я, должно быть, делаю что-то не так. Почему нет способа просто переместить файл / папку в другое место назначения (как предусмотрено в веб-интерфейсе Drive)?

Спасибо

1 Ответ

0 голосов
/ 21 января 2019

Когда речь идет о перемещении файлов с помощью DriveApp, вам нужно работать из папки, а не из файла.

Откройте папку, в которую вы хотите переместить файл, и используйте метод «addFile (file)», чтобы добавить файл в эту папку, затем откройте папку, из которой вы хотите переместить файл, и используйте «removeFile (file)» удалить это.

Это может показаться немного неуклюжим, но на самом деле возможно иметь файл в нескольких папках одновременно на диске. Папки - это просто ярлыки. При рассмотрении файла, который уже находится в нескольких папках, значение «перемещения» его в новую папку является двусмысленным, на самом деле это вопрос добавления / удаления его из папок.

Добавить: https://developers.google.com/apps-script/reference/drive/folder#addfilechild

Снимите: https://developers.google.com/apps-script/reference/drive/folder#removeFile(File)

...