【问题标题】:Asana API PHP : list all tasks by users (or assignee)Asana API PHP:按用户(或受让人)列出所有任务
【发布时间】:2018-02-28 16:12:21
【问题描述】:

我想列出分配给每个用户(受让人)的所有任务(及其自定义字段)。 我列出所有用户的循环有效。但是,我没有成功列出他们的任务(和任务的自定义字段)。的确,答案是空的……

我哪里错了? 如何按受理人列出任务并获取每个任务的自定义字段?

<?php
require '../vendor/autoload.php';
$me = $client->users->me();
$users = $client->users->findByWorkspace($me->workspaces[0]->id, null, array('iterator_type' => false, 'page_size' => null))->data;

foreach($users as $user){
    echo '<h2>'.$user->name.'</h2>';

    // and this doesn't work :
    $tasks = $client->tasks->findAll( ['assignee' => $user->id] );
    var_dump($tasks);
}

非常感谢!

亚历克西斯

【问题讨论】:

    标签: php task asana asana-api


    【解决方案1】:

    根据Asana API Reference关于querying Tasks

    如果不指定受理人和工作区,则必须指定项目或标签。

    这意味着您至少需要 2 个参数,assignee workspace

    $taskIterator = $client->tasks->findAll(array(
        'workspace'=> {INSERT HERE THE WSPC ID}, 'assignee'=>'me')
    );
    

    您可以轻松地遍历所有工作区以实现您的目标,为此,您可以使用从以下位置返回的字段 workspaces

    $client->users->me();
    //or with a direct reference
    $client->users->me()->workspaces;
    

    findAll() also supports an optional array of fields:

    $taskIterator = $client->tasks->findAll(array(
         'workspace'=> {INSERT HERE THE WSPC ID}, 'assignee'=>'me'),
    array(
        'fields'=>array('name', 'assignee_status'), 'item_limit'=>10)
    );
    

    【讨论】:

      猜你喜欢
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 2020-01-21
      • 1970-01-01
      • 1970-01-01
      • 2019-04-26
      • 2016-10-04
      • 1970-01-01
      相关资源
      最近更新 更多