我的目标是每周在Basecamp 3的几个项目中创建自动待办事项。
为此,我使用Zapier中的Schedule应用程序触发在Google电子表格上创建多行。然后,这些行触发在Basecamp 3中的特定项目中创建待办事项。此行的输入应为:项目的名称(用于搜索步骤),待办事项文本。
我正在使用Zapier中的Formatter App来尝试实现这一目标。在第一个Formatter操作中,我使用我们项目的所有名称的逗号分隔文本并返回所有段。在第二个Formatter上,我将分割所有待办事项文本的文本,并再次返回所有段。
Formatter 1输入(项目):AA,BB,CC,DD
Formatter 2输入(待办事项文本):购买,使用,破解,修复
现在,我想要实现的目标在附图中说明。还说明了zap(就像它)实现的数据。 Data Stream Diagrams
我们经常使用Grasshopper,一种用于参数化建模和数据驱动设计的Rhino 3D插件。在蚱蜢中,这将被称为"交叉引用"数据流。这是否可以在Zapier中使用Code?如果是这样,我可以得到一些帮助吗?
谢谢!
Zapier Zap GIF:https://drive.google.com/open?id=0B85_sQemABgmQVd6MENRd0NsNGc
答案 0 :(得分:0)
我没有权限查看您的Google云端硬盘链接,但我认为我了解了您尝试做的事情。
与使用Formatter相比,您最好不要使用Python,因为您可以更好地控制返回的内容。您可以使用Python itertools.product
获取两个列表的每个组合。
# zapier runs in a vanilla python environment
# so you can import standard packages
import itertools
letters = ['AA', 'BB', 'CC', 'DD']
actions = ['buy it', 'use it', 'break it', 'fix it']
combos = list(itertools.product(letters, actions))
# [('AA', 'buy it'), ('AA', 'use it'), ... ('DD', 'fix it')]
从那里开始,您希望按行动步骤的要求格式化该列表(可能通过列表理解,例如[{'code': c[0], 'action': c[1]} for c in combos]
,并从代码步骤返回列表。
Zapier的一个隐藏功能是,如果从代码步骤返回一个数组,则zap将为每个数组元素运行该操作。但要小心,这意味着对于zap的每个输入,输出将运行16x(这可以快速进入任务限制)。
希望这会让你走上正轨。如果有些事情不清楚,请告诉我!