google-app-maker - 添加条目后表未更新

标签 google-app-maker

简短版本:除非我手动刷新页面,否则新条目不会出现在带有查询生成器过滤器的表中。


长版本:我有一个使用 Datasource Query Builder 的表过滤掉已标记为“完成”和“已交付”的条目。

因此模型是SystemOrders,但表的数据源是添加了过滤器的数据源(SystemOrders_HideComplete)。所有这些都运行良好。

当用户为数据库创建新条目时,他们单击“添加”按钮,打开页面片段。他们可以输入所有数据并写入数据,但当片段关闭时表不会自动刷新,并且不会显示新条目。

刷新浏览器页面或使用表(如下所列)同一页面上的自定义按钮重新加载数据源会导致显示新条目。

widget.datasource.query.clearFilters();
var datasource = app.datasources.SystemOrders_HideComplete;
datasource.load();

我尝试调整页面片段的“提交”按钮,希望它能让用户免于手动刷新页面,但这似乎也不起作用:

widget.datasource.createItem();
var datasource = app.datasources.SystemOrders_HideComplete;
datasource.load();
app.closeDialog();

我假设这可能是因为 datasource.load();命令来自片段?

任何帮助找出自动显示新条目的方法将不胜感激。

最佳答案

理论上,如果您为表使用相同的数据源并创建页面片段,则新项目应该自动附加:

// Table datasource
app.datasources.SystemOrders_HideComplete

// Page fragment datasource
app.datasources.SystemOrders_HideComplete.modes.create

如果由于某种原因你想使用不同的数据源来创建新项目,你可以将新记录推送到列表数据源(在这种情况下,你将避免对服务器的额外调用并提供 100% 保证新项目将出现在列表,即使它不适合选定的过滤器/分页/排序...):

widget.datasource.createItem({
  success: function(record) {
    app.datasources.SystemOrders_HideComplete.items.push(record);
    app.closeDialog();
  },
  failure: function(error) {
    // TODO: handle error
  }
});

...或强制重新加载列表数据源(在这种情况下,您将获得适合您的过滤器的新数据,但可能会错过您的新项目):

widget.datasource.createItem({
  success: function(record) {
    app.datasources.SystemOrders_HideComplete.load();
    app.closeDialog();
  },
  failure: function(error) {
    // TODO: handle error
  }
});

关于google-app-maker - 添加条目后表未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45177765/

相关文章:

javascript - 尝试在 AppMaker 中使用 HTML5 文件选择器

google-app-maker - 无法在 Google App Maker 的 TextBox 上执行自定义 CSS 样式

google-app-maker - 如何从表格中导入带有关系的数据

javascript - 应用制作工具错误 : "SEVERE: Failed due to circular reference." when I try to run server script for "query.sorting" a table

google-app-maker - 如何将回调附加到 Google 应用制作工具中的自定义确认对话框?

google-cloud-sql - 从 App Maker 到 Cloud SQL 的连接已锁定

google-apps-script - 如何允许 Google 应用制作工具应用访问而无需登录

javascript - Google App Maker,如何创建复制到剪贴板功能

google-app-maker - 使用参数调用 Google 应用制作工具应用