在主/明细关系表单小部件对话框按钮中设置详细信息的默认值

时间:2017-01-26 05:15:25

标签: google-app-maker

我有一个类似于提供的关系样本的主/细节关系。 在我的例子中,dep与empl有一对多的关系 我有一个窗体小部件(dep),它有一个插入一个empl的按钮

当我点击该按钮时,会显示正确的对话框,但我可以输入任何我不想要的dep。 我希望将关系默认为“父”窗口小部件,在其中单击它并且理想情况下不可编辑。

1 个答案:

答案 0 :(得分:2)

很难在没有看到您的应用的情况下给出确切的答案,但您应该用标签替换表单中的下拉列表,这将使其无法编辑。您可以将标签的值绑定到关系,就像下拉列表的值绑定一样。

稍微容易一点的选择是禁用下拉列表(在属性检查器中查找可能的Enabled)。但这可能会让您的用户感到困惑,因为他们可能认为它应该是可编辑的。

(或者,如果显示关系并不重要,您可以完全删除该字段。)

我认为这只能回答你问题的“不可编辑”部分,如果你想要预先填写,你需要做一些脚本,或者使用relation data sources

我建议使用关系数据源,所以现在你可能有类似的东西:

app.datasources.Emp.create(),创建一名新员工。

相反,您可以使用widget.datasource.relations.Emp.create(),这将创建一个新的员工,该员工与widget.datasource中的当前项目有关系。如果此按钮放在您的部门表单窗口小部件中,那么这意味着它将创建与表单中显示的任何部门相关的员工。

请注意,这些都不会阻止用户更改员工的部门,只会更改UI。在很多情况下这已足够,但如果限制哪些用户可以创建员工,更改部门等,那么您可能还想添加一些服务器端安全控制:请参阅https://developers.google.com/appmaker/security/secure-app-data