通过Python API以相反的顺序创建Asana任务

时间:2015-08-21 13:05:22

标签: python asana

我有一个python脚本,它将csv文件导入Asana项目,每行一个任务。

它工作正常,除了它似乎以与Web界面相反的顺序创建任务 - 即:在线,您在列表的末尾创建新任务,但API似乎在顶部创建新任务。

由于csv是令人烦恼的结构(即:通过演示而不是按截止日期排序,分成我在运行时解析的部分等),顺序确实比理想情况更重要。

那么:是否有一种简单的方法来反转顺序,以便API在最后附加任务而不是将它们插入顶部?现在,我只是在导入csv时将其反转,并且它运行正常,但它很丑陋且效率低下,我想知道我是否错过了一些非常明显的东西:)

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

通过全向按钮,多宿主等添加到UI中的项目的任务也将出现在项目的顶部,除非您明确地在项目中自己,专注于中心窗格任务列表并按& #34;输入"添加新任务。有点困惑,我同意。

至于task ordering in the API,你是正确的,添加到项目的新任务将出现在项目的顶部。您可以通过调用POST /tasks/task-id/addProject并提供insert_beforeinsert_aftersection参数以及任务或部分的ID来更改任务的位置,以便将此任务移到旁边

使用Asana python client,呼叫如下所示:

`client.tasks.add_project(<TASK_ID>, { 'project' : <PROJECT_ID>, 'insert_after' : <PRECEDING_TASK> })`

您还可以在创建时指定任务的memberships属性,以指定任务应出现的部分。

说实话,您当前的解决方案可能是最好的,将来我们可能允许您在创建时指定相邻任务。在这种情况下,您可以在每个创建的insert_after中指定每个响应的ID以获得相反的顺序。我将把它添加到我们的请求列表中。