在手动模式下保存时如何获取记录的主键值?

时间:2019-02-18 12:28:12

标签: google-apps-script google-cloud-platform google-app-maker

我有一个处于手动保存模式的模型和一个处于 create 模式的表单。一旦我添加了详细信息并单击提交,就应该创建记录并 发出类似“您的请求已注册id = 7”之类的警报,其中id是id(主键)。

请注意,主键是自动递增的,并且是动态生成的。

在手动保存模式下,我正在使用 saveChanges 保存记录,但看到错误:

  

严重:记录RecordKey {key = private $ 2,型号   key = 1ymdoCYoHKEGpumlXveKKZh_57jUjd9OY | 7LyXBUY46K9Jl6GRCy1DeL32kXmnGHis}   已删除。失败:对象的getProperty。   (UserCreationRequest:12:37)在createUCR(UserCreationRequest:11:19)     在   UserCreationRequest.Container.UserCreationRequestPanel.UserCreationRequestPanelFooter.UserCreationRequestPanelSubmitButton.onClick:1:1

(错误12:37指向记录。_key)

代码:(已执行OnClick提交按钮)

   widget.datasource.saveChanges(function(record) {
   alert('Your request is registered with id='+record._key);
   }

有人可以建议在手动模式下保存时如何获取主键吗?

其他信息参考:

上面的代码在其他地方为其他模型提供了帮助。但是不适用于当前模型,是因为当前模型具有关系吗?

我在当前模型的“数据源”部分添加了一个新的数据源 并通过使用它的工作正常。但是为什么不能与原始版本配合使用?

也仅供参考,this是一个类似的问题,但由于它是另一种方法而没有帮助。我热衷于使用小部件本身进行保存。

1 个答案:

答案 0 :(得分:0)

首先,我们需要了解创建模式与普通模式不同。明确说明后,我们可以执行以下操作:

假设数据源名称为MYDATASOURCE,则表单数据源应为MYDATASOURCE(create)。然后,在插入表单内的提交按钮小部件的 onClick 事件中,使用以下命令:

widget.datasource.createItem(function(record){
  app.datasources.MYDATASOURCE.saveChanges(function(){
    console.log(record._key);
  });
});