【问题标题】:How to get a user's oldest task from the Asana API?如何从 Asana API 获取用户最早的任务?
【发布时间】:2015-07-06 22:03:20
【问题描述】:

所以我在尝试获取用户最旧的任务时有点进退两难。我能够获取团队工作区中每个用户的最早任务,但需要 1 小时 30 分钟才能运行。

这是我目前的工作流程:

1) Get all users and store in a users var.
2) Iterate through all users.
3) For each user, grab all tasks and store in a tasks var.
4) Iterate through all tasks, compare task.modified_at attribute to oldest_task var, store in oldest_task if task.modified_at is older.

需要很长时间才能加载和迭代每个用户的任务。关于如何使这个过程更快的任何想法?是否有可能通过 API 专门查询用户最早的任务?

我正在构建一个工具,用于跟踪每个用户的最旧任务的年龄,以便进行跟踪。我很想知道我是否缺少某些东西。

【问题讨论】:

    标签: python asana asana-api


    【解决方案1】:

    对于最旧的任务,您可能应该使用 created_at 而不是 modified_at(毕竟最旧的任务可能最近被修改过)。

    我们没有任何方法在 API 中专门获取较旧的任务,或按创建时间排序或类似的东西,所以目前您的解决方法实际上是唯一的方法。您可以通过在任务查询中使用?opt_fields=created_at 来减少加载的数据量,从而加快速度。

    【讨论】:

    • 未来有什么计划允许我们这样做吗?它肯定会减轻你的服务器的痛苦;)
    • 这不在我们的路线图上——这真的是我第一次听说有人希望将最早的任务分配给用户。这样做的具体目标是什么?你能解释一下你想要这个做什么吗?在我的脑海中,很难想象它有什么用处。
    • 我们希望设置指标和警报,以检测每个用户的陈旧任务(例如最长时间未触及的任务),以提醒人们对其采取行动。还要知道随着我们的成长会发生什么。
    • 有趣。这对我们来说根本行不通,因为我们使用体式任务来代表各种事情,比如责任领域、经理关系等,这些事情永远不会完成。如果您使用任务来表示实际的待完成工作,我想这可行吗?您当然可以至少使用?completed_since=now 来消除查看已经完成的任务的需要,但这是我能想到的唯一捷径。当我们最终添加高级搜索时,应该可以做到这一点,但它还没有在我们的具体路线图上。
    • 我们也这样做,但我们也可以按标签和项目过滤它们,以排除不合法的任务。理想情况下,我们可以在 API 调用中添加这些过滤器;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-21
    • 1970-01-01
    相关资源
    最近更新 更多