Previous topic

stalker.core.models.status.Status

Next topic

stalker.core.models.structure

This Page

stalker.core.models.status.StatusList

Inheritance diagram of stalker.core.models.status.StatusList

class stalker.core.models.status.StatusList(statuses=[], target_entity_type='', **kwargs)[source]

Bases: stalker.core.models.entity.Entity

the type specific list of Status

Holds multiple statuses to be used as a choice list for several other classes.

A StatusList can only be assigned to only one entity type. So a Project can only have a suitable StatusList object which is designed for Project entities.

Parameters:
  • statuses – this is a list of status objects, so you can prepare different StatusList objects for different kind of entities
  • target_entity_type

    use this parameter to specify the target entity type that this StatusList is designed for. It accepts entity_type names. For example:

    from stalker.core.models import status, project
    
    status_list = [
        status.status(name="Waiting To Start", code="WTS"),
        status.status(name="On Hold", code="OH"),
        status.status(name="In Progress", code="WIP"),
        status.status(name="Waiting Review", code="WREV"),
        status.status(name="Approved", code="APP"),
        status.status(name="Completed", code="CMPLT"),
    ]
    
    project_status_list = status.statusList(
        name="Project Status List",
        statuses=status_list,
        target_type=project.Project.entit_type
    )
    

    now with the code above you can not assign the project_status_list object to any other class than a Project object.

__init__(statuses=[], target_entity_type='', **kwargs)[source]

Methods

__init__(**kwargs[, statuses, ...])

Attributes

code
created_by gets and sets the User object who has created this
date_created gets and sets the datetime.datetime object which shows when
date_updated gets and sets the datetime.datetime object which shows when
description the description of the entity
name the name of the entity
nice_name this is the nice name of the SimpleEntity. It has the same
notes all the notes about this entity, it should be a list of Notes
statuses this is the property that sets and returns the statuses, or
tags a list of Tag objects which shows the related tags to the
target_entity_type the target_entity_type which this StatusList is valid for
updated_by gets and sets the User object who has updated this
statuses[source]

this is the property that sets and returns the statuses, or namely the status list of this StatusList object

target_entity_type[source]

the target_entity_type which this StatusList is valid for

created_by

gets and sets the User object who has created this AuditEntity

date_created

gets and sets the datetime.datetime object which shows when this object has been created

date_updated

gets and sets the datetime.datetime object which shows when this object has been updated

description

the description of the entity

name

the name of the entity

nice_name

this is the nice name of the SimpleEntity. It has the same value with the name (contextually) but with a different format like, all the whitespaces replaced by underscores (“_”), all the CamelCase form will be expanded by underscore (_) characters and it is always lowercase.

There is also the code attribute which is simple the uppercase form of nice_name if it is not defined differently (i.e set to another value).

notes

all the notes about this entity, it should be a list of Notes objects or an empty list, None is not accepted

tags

a list of Tag objects which shows the related tags to the entity

updated_by

gets and sets the User object who has updated this AuditEntity