【问题标题】:Limits to application building in Google Apps Script在 Google Apps 脚本中构建应用程序的限制
【发布时间】:2012-11-16 17:56:23
【问题描述】:

我们是 Google Apps for Your Domain 企业帐户和房地产经纪公司。我们想要构建一个将多个 Google Apps 服务联系在一起的 Web 应用程序。如果我们可以在 Google Apps Script 中完成这一切,那就太好了,但同时可能会扩展 Google Apps Script 中可能的限制。我们没有时间或资源使用 Google Web Toolkit (GWT) 进行完整的应用程序开发。框架方法是正确的解决方案吗?

我们想要构建一个应用程序,允许我们的代理创建房地产列表记录。每条记录很大,每条记录有 300 - 400 个表单字段,具体取决于属性类型。许多字段是“查找”字段,具有选择列表格式或多复选框格式的特定值。 (例如,屋顶类型 = 选择一项:石板、瓦片、卷屋顶;电器 = 选择所有:冰箱、炉灶、洗碗机等)

每条记录还需要原始高分辨率格式的相关照片和更小的分辨率集,以便在各种环境中显示。每条记录将有 24-50 张 1MB 照片。我认为我们可以为照片使用和集成 Google Drive,因为可以简化用户将文件夹从桌面拖放到 Google Drive 的过程。将图像存储在 Google Drive 中,并且仅从应用程序中引用将解决部分隐含的存储问题。我读到有一个 200MB ScriptDb Quota in Google Apps Script,所以我可以看到仅对于“数据”而言,这可能是一个潜在的交易破坏者。我没有确切的数据库存储要求,但我知道我们将有 700 条记录开始,这个数字将增长到数千条。

应用程序的用户都是内部用户,因此 GAFYD 身份验证集成是一个很好的好处。

目前还没有表单api,那么我们首先如何创建数据输入表单呢?看来我们需要手动创建表单,或者创建一个示例电子表格来自动生成表单。但是,我们如何增强表单以修改选择列表并附加验证规则,以及动态表单行为,例如根据用户输入创建/显示/隐藏其他元素(例如输入房间数量;然后输入每个房间的尺寸)。

另一个潜在的阻碍是调整照片的大小。我们希望访问原始照片以创建进一步的营销材料,但是在应用程序 UI 中,我们需要使用更小尺寸的各种尺寸的图像以提高效率。 (例如,用一个缩略图显示属性列表来表示每条记录)我猜 Google Drive api 中会有方法来创建子文件夹来存储调整大小的图像,但是是否可以访问像 gd 这样的图形处理软件(可能通过API 到 picasa)?

一条记录应该可以在不同的布局和视图中查看。例如完整的记录详细信息、摘要视图、营销传单视图。

创建记录后,需要将消息发送给创建记录的代理,以及处理记录的内部团队,以处理包括文案撰写/审查 + 营销在内的工作流。这似乎可能适合新的 Google 群组?一旦记录被“批准”,则应用程序需要向数百个外部收件人生成营销电子邮件;根据来自各种池的业务规则进行选择。因此,应用程序需要额外的存储空间,或者可能需要集成地址簿才能管理联系人。

未来对记录的编辑(例如价格更改、照片更改)需要触发审核/批准工作流程。

Google Apps 脚本是否能够处理此类应用程序的大小、范围和复杂性?或者,推荐的路线是使用诸如http://bcosca.github.com/fatfree/ 之类的微框架来使用它们各自的 API 将所有 Google Apps 组件联系在一起吗?

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    目前没有form api,如何创建数据入口 首先是表格?

    实际上有两个:UiApp(以及它的拖放式 GUI Builder)和 HtmlService 都可以显示任意复杂的表单。

    我认为我们可以使用和集成 Google 云端硬盘 照片,因为该过程可以简化用户拖动和 将文件夹从桌面拖放到 Google 云端硬盘。

    Drive 与 Apps 脚本集成。

    我没有确切的数据库存储要求,但我知道我们会 有 700 条记录开始,这个数字将增长到几个 千。

    您可能想尝试将 Google Cloud SQL 作为您的存储,它在 Apps 脚本中 100% 原生支持,并且是一个“真正的”SQL 数据库。但是,如果您将照片存储在 Drive 中,几千条记录是很小的……在这种情况下,ScriptDb 可能会扩展到几百万条记录。

    集成了 Google 网上论坛和联系人。

    【讨论】:

      【解决方案2】:

      可以在此处找到 Google 的文档:https://developers.google.com/google-apps/

      Google Apps 脚本有时非常强大,但就您所暗示的数据量而言,它的速度不会很快。

      正如您所说,ScriptDB 有大小限制,因此它不能存储所有内容。电子表格限制为每张工作表 256 列和 400000 个单元格。我解决这个问题的方法是将我的数据分成一组带有一组工作表的电子表格。如果您从事房地产行业,您可能可以按地区和邻里/区域分割您的数据以实现类似的目标。如果你真的想压缩东西,你可以将一行数据作为字符串化的 JSON 对象存储在一个单元格中。但是,它将不再是人类可读的。

      除非您愿意为存储空间支付额外费用,否则您的照片听起来会很快填满云端硬盘帐户。我不熟悉小工具中的图片,所以我不确定它们是否可以从云端硬盘中嵌入。

      我没有使用表单的经验,但是您可以使用 UiApp 构建一个小工具,然后在电子表格上调用 appendRow 来添加您所有字段的内容。通过这样构建您的应用程序,您可以为事物指定有效值(并从“配置”电子表格中读取这些值)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-10-03
        • 1970-01-01
        • 1970-01-01
        • 2018-05-31
        • 2021-01-10
        • 1970-01-01
        • 2018-02-16
        • 1970-01-01
        相关资源
        最近更新 更多