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

问题描述:

我正在测试一个项目,其中两个数据库由多个关系连接(DevicesEmployees)。这两个数据源都是Google云端硬盘表。如何删除这两个表中的所有数据,而不删除表本身?我想保持它们的元数据和关系不变,但是从新的数据开始。基于another answer,我试着按下按钮运行下面的命令:在AppMaker中删除数据存储区中的所有输入数据

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

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

首先,你应该服务器端运行这段代码:

// 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

作为一个快速和简单的解决方法,你可以简单地创建一个全新的部署(开箱即可,所有的模型/表格都是空的)。

+0

这很奇妙,谢谢! –