Skip to content

Latest commit

 

History

History
56 lines (37 loc) · 1.37 KB

task_template.rst

File metadata and controls

56 lines (37 loc) · 1.37 KB

Working with Task Templates

Task templates can help you organize your workflows by building a collection of tasks to be applied for specific contexts. They can be applied to all Context objects for example Project, Sequences, Shots, etc...

Query task templates

Retrive all task templates and there tasks for a project:

project = session.query('Project').first()

for task_template in project['project_schema']['task_templates']:
    print('\ntask template: {0}'.format(
        task_template['name']
    ))

    for task_type in [t['task_type'] for t in task_template['items']]:
        print('\ttask type: {0}'.format(
            task_type['name']
        ))

"Apply" a task template

Create all tasks in a random task template directly under the project:

project = session.query('Project').first()

task_template = random.choice(
    project['project_schema']['task_templates']
)

for task_type in [t['task_type'] for t in task_template['items']]:
    session.create(
        'Task', {
            'name': task_type['name'],
            'type': task_type,
            'parent': project
        }
    )

session.commit()