删除AppMaker中数据存储中的所有输入数据

时间:2017-09-14 19:50:01

标签: google-app-maker

我正在测试一个项目,其中包含两个由MANY-ONE关系连接的数据库(Devices - > Employees)。两个数据源都是Google Drive Tables。如何删除这两个表中的所有数据,而不删除表本身?我想保持他们的元数据和关系完整,但从新数据开始。基于another answer,我试图按下按钮运行以下命令:

var records = app.models.Device.newQuery().run(); app.deleteRecords(records); var records = app.models.Employee.newQuery().run(); app.deleteRecords(records);

但我收到错误:

app.models.Device.newQuery is not a function at AddDevice.Button1.onClick:1:33

我不知道从那里去哪里。提前谢谢。

1 个答案:

答案 0 :(得分:3)

首先,您应该在服务器端

上运行此代码
// server script
function deleteAll() {
  var records = app.models.Employee.newQuery().run(); 
  app.deleteRecords(records);
  ...
}


// Client script, for instance button's onClick event handler
google.script.run.deleteAll();

然后,您可以指定relation Owner来简化您的生活。如果已配置,则删除主记录时将删除所有相关记录(级联删除)。如果您正确设置了所有模型的关系,那么您只需要从一个模型/表中删除记录,所有其他记录也将被删除: Relation owner

<强> PS

作为一种快速简单的解决方法,您只需创建一个全新的部署(开箱即用,所有模型/表格都将为空)。