【发布时间】:2017-05-29 10:41:14
【问题描述】:
我试图弄清楚如何获取涉及电子邮件列的数据库信息,将所有电子邮件组成一个数组,然后使用“按钮”功能填充电子邮件页面的“收件人:”部分。
感谢任何帮助。在这方面非常新,并指出我在哪里获取信息会很棒。谢谢
【问题讨论】:
标签: google-app-maker
我试图弄清楚如何获取涉及电子邮件列的数据库信息,将所有电子邮件组成一个数组,然后使用“按钮”功能填充电子邮件页面的“收件人:”部分。
感谢任何帮助。在这方面非常新,并指出我在哪里获取信息会很棒。谢谢
【问题讨论】:
标签: google-app-maker
我建议您运行一个服务器脚本来查询包含电子邮件的数据源。脚本将如下所示:
function getEmails(){
var query = app.models.<yourmodel>.newQuery();
var results = query.run();
var allEmails = [];
if(results.length > 0){
for(var i = 0; i < results.length; i++){
var uniqueEmail = results[i].<emailfieldname>;
allEmails.push(uniqueEmail);
}
}
return allEmails.join();
}
然后将脚本添加到按钮小部件“onclick”事件,该事件将运行服务器脚本并操作返回的数据。类似的东西:
function poulateToField(response){
<widget path>.text/value = response;
}
google.script.run.withSuccessHandler(poulateToField).getEmails();
上面的 widget path 将是“To:”小部件的路径,可以是文本框、文本区域等。在我的例子中,我使用了文本区域和路径这是“widget.parent.descendants.TextArea1.value”
我希望这会有所帮助。如果您有更多问题,请告诉我! :)
P.D.请不要忘记查看 official documentation 以获得更好、更详细的说明。
【讨论】:
您还可以使用投影从数据源中获取项目列表(电子邮件)。根据本文https://developers.google.com/appmaker/ui/binding#projections:
投影让您可以访问数据源中记录的属性 物品清单。使用 ..projections.. 选项访问投影 高级绑定向导,或使用投影运算符 .. 在 绑定路径。例如,对于具有名称的员工数据源 属性,@datasources.Employee.items..name 返回所有列表 员工姓名。
您可以查看“呼叫脚本”指南,该指南向您展示如何使用应用制作工具发送电子邮件,该指南可在此处获得 https://developers.google.com/appmaker/tutorials/call-scripts/
要使用投影并按照上述指南,在“创建 UI”下的步骤#2中:为收件人添加一个文本框:
c。在属性编辑器中,您可以选择绑定并将小部件绑定到遵循以下路径的数据源投影,而不是在文本框小部件中输入“To”值:datasource > items > ..projections.. > Email(电子邮件所在的数据源字段的名称)
例如,投影将如下所示:@datasource.items..email
这将自动将数据源中可用的所有电子邮件绑定到文本框小部件。然后您可以完成指南,电子邮件将发送到您数据源中的所有电子邮件地址。希望这会有所帮助。
【讨论】: