首页 文章

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

提问于
浏览
0

我正在测试一个项目,其中包含两个由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 回答

  • 3

    首先,您应该在 server side 上运行此代码:

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

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

相关问题