2015-09-11 4 views
0

В asana documentation говорится, что вы можете создать задачу в рабочей области с помощью следующего кода, который работает:Как загрузить задачу asana в проекте через python asana api?

workspace_id = '48673284270301' 
client = asana.Client.basic_auth('asana_api') 
client.tasks.create_in_workspace(workspace_id,{ 'name': 'new task'}) 

Я также знаю, что вы можете создать проект с помощью следующего кода:

client = asana.Client.basic_auth('asana_api') 
client.projects.create_in_workspace(workspace_id,{'name': 'new project'}) 

Однако , Я не могу понять, как загрузить задачу в рамках определенного проекта?

Я попытался следующие:

workspace_id = '48673284270301' 
client = asana.Client.basic_auth('asana_api') 
client.tasks.create_in_workspace(workspace_id,{ 'name': 'new task','projects':[{'id':48729403436686,'name': u'Larry (2100 Walnut)'}]}) 

который посылает мне следующее сообщение об ошибке:

File "build/bdist.macosx-10.6-x86_64/egg/asana/resources/_tasks.py", line 78, in create_in_workspace 
    File "build/bdist.macosx-10.6-x86_64/egg/asana/client.py", line 100, in post 
    File "build/bdist.macosx-10.6-x86_64/egg/asana/client.py", line 60, in request 
asana.error.InvalidRequestError: Invalid Request: projects: [0]: Not a recognized ID: [object Object] 

ответ

0

При цитировании объектов в любом месте в API все, что вам нужно использовать это глобально уникальный идентификатор этот объект.

Если вы измените код просто ссылаться на идентификатор проекта при создании задачи, я думаю, он должен работать

client = asana.Client.basic_auth('asana_api') 
client.tasks.create_in_workspace(workspace_id,{ 'name': 'new task','projects':[project_id]}) 

Кроме того, я добавил, что another example to the python-asana library демонстрирует создание задачи в конкретном проекте.

Смежные вопросы