AsanaCreateTaskOperator

使用 AsanaCreateTaskOperator 来创建一个 Asana 任务。

使用该操作器

AsanaCreateTaskOperator 最低要求新任务的名称和用于连接到您账户的 Asana 连接(conn_id)。您可以通过 task_parameters 指定许多其他任务属性。您必须在 task_parameters 或连接中指定 workspaceparentprojects 中的至少一个。

AsanaDeleteTaskOperator

使用 AsanaDeleteTaskOperator 来删除现有的 Asana 任务。

使用该操作器

AsanaDeleteTaskOperator 需要要删除的任务 ID。使用 conn_id 参数来指定用于连接到您账户的 Asana 连接。

AsanaFindTaskOperator

使用 AsanaFindTaskOperator 来搜索符合某些条件的 Asana 任务。

使用该操作器

AsanaFindTaskOperator 需要一个搜索参数字典,其描述见此处。使用 conn_id 参数来指定用于连接到您账户的 Asana 连接。通过连接提供的任何参数,如果在 search_parameters 中没有被覆盖,则将用于搜索。

AsanaUpdateTaskOperator

使用 AsanaUpdateTaskOperator 来更新现有的 Asana 任务。

使用该操作器

AsanaUpdateTaskOperator 最低要求要更新的任务 ID 和用于连接到您账户的 Asana 连接(conn_id)。您可以通过 task_parameters 覆盖许多其他任务属性

tests/system/asana/example_asana.py


# Create a task. `task_parameters` is used to specify attributes the new task should have.
# You must specify at least one of 'workspace', 'projects', or 'parent' in `task_parameters`
# unless these are specified in the connection. Any attributes you specify in
# `task_parameters` will override values from the connection.
create = AsanaCreateTaskOperator(
    task_id="run_asana_create_task",
    task_parameters={"notes": "Some notes about the task."},
    name="New Task Name",
)
# Find tasks matching search criteria. `search_parameters` is used to specify these criteria.
# You must specify `project`, `section`, `tag`, `user_task_list`, or both
# `assignee` and `workspace` in `search_parameters` or in the connection.
# This example shows how you can override a project specified in the connection by
# passing a different value for project into `search_parameters`
one_week_ago = (datetime.now() - timedelta(days=7)).strftime("%Y-%m-%d")
find = AsanaFindTaskOperator(
    task_id="run_asana_find_task",
    search_parameters={"project": ASANA_PROJECT_ID_OVERRIDE, "modified_since": one_week_ago},
)
# Update a task. `task_parameters` is used to specify the new values of
# task attributes you want to update.
update = AsanaUpdateTaskOperator(
    task_id="run_asana_update_task",
    asana_task_gid=ASANA_TASK_TO_UPDATE,
    task_parameters={"notes": "This task was updated!", "completed": True},
)
# Delete a task. This task will complete successfully even if `asana_task_gid` does not exist.
delete = AsanaDeleteTaskOperator(
    task_id="run_asana_delete_task",
    asana_task_gid=ASANA_TASK_TO_DELETE,
)

create >> find >> update >> delete

此条目有帮助吗?