如何在Google App Maker中更新相关数据模型中的记录

时间:2018-11-26 18:37:30

标签: google-app-maker

我正在创建具有两个数据模型的应用程序: 1 /模型“ A”,其字段为:Id,DATE,STATUS,EMAIL_ADDRESS,CASE_TYPE,CASE_DESCRIPTION。 2 /模型“ B”具有其他字段(Id,DATE,ADMIN_EMAIL,CASE_RESOLUTION,并且没有名为STATUS的字段)。 模型“ A”和“ B”是一对一关联的(“ A”是所有者)。 用户填写两个表格。第一种形式在模型“ A”中创建记录,第二种形式在模型“ B”中创建。 保存第一个表格时,我会设置记录。STATUS=“ NEW”,使用事件onBeforeCreate自动设置。 保存第二号表单(数据源:“ A”:“ B”(相关))后,我想将模型“ A”中的状态更新为“ BOSS_ACCEPT”。我该怎么办?

1 个答案:

答案 0 :(得分:0)

创建模型B记录后,实际上有两种方法来处理相关的模型A记录的更新。

服务器端,这更加安全。

您将在模型B的OnAfterCreate服务器事件脚本中需要以下内容:

var relatedrecord = app.models.Model_A.getRecord(record.Model_A._key);
relatedrecord.STATUS = "BOSS_ACCEPT";
app.saveRecords([relatedrecord]);

并且为了在客户端上反映此更改,您需要在“提交”按钮createItem()回调函数中包括数据源负载。看起来像这样:

widget.datasource.createItem(function() {
  app.datasources.Model_A.load();
});

客户端解决方案。

在Form 2的“提交”按钮中,包含以下代码:

widget.datasource.createItem(function(record) {
  record.Model_A.STATUS = 'BOSS_ACCEPT';
});

如果此答案有帮助,请标记为已接受。谢谢。