stalker.models.type.Type

Inheritance diagram of stalker.models.type.Type
class stalker.models.type.Type(name=None, code=None, target_entity_type=None, **kwargs)[source]

Bases: stalker.models.entity.Entity, stalker.models.mixins.TargetEntityTypeMixin, stalker.models.mixins.CodeMixin

Everything can have a type.

New in version 0.1.1: Types

Type is a generalized version of the previous design that defines types for specific classes.

The purpose of the Type class is just to define a new type for a specific Entity. For example, you can have a Character Asset or you can have a Commercial Project or you can define a Link as an Image etc., to create a new Type for various classes:

Type(name="Character", target_entity_type="Asset")
Type(name="Commercial", target_entity_type="Project")
Type(name="Image", target_entity_type="Link")

or:

Type(name="Character", target_entity_type=Asset.entity_type)
Type(name="Commercial", target_entity_type=Project.entity_type)
Type(name="Image", target_entity_type=Link.entity_type)

or even better:

Type(name=”Character”, target_entity_type=Asset) Type(name=”Commercial”, target_entity_type=Project) Type(name=”Image”, target_entity_type=Link)

By using Types, one can able to sort and group same type of entities.

Types are generally used in Structures.

Parameters:target_entity_type (string) – The string defining the target type of this Type.
__init__(name=None, code=None, target_entity_type=None, **kwargs)

Methods

__init__([name, code, target_entity_type])

Attributes

code The code name of this object.
created_by The User who has created this object.
created_by_id The id of the User who has created this entity.
date_created A datetime.datetime instance showing the creation date and time of this object.
date_updated A datetime.datetime instance showing the update date and time of this object.
description Description of this object.
entity_groups
entity_id
entity_type
generic_data This attribute can hold any kind of data which exists in SOM.
generic_text This attribute can hold any text.
html_class
html_style
id
metadata
name Name of this object
nice_name Nice name of this object.
notes All the Notess attached to this entity.
plural_class_name the plural name of this class
query
tags A list of tags attached to this object.
target_entity_type The entity type which this object is valid for.
thumbnail
thumbnail_id
tjp_id returns TaskJuggler compatible id
to_tjp renders a TaskJuggler compliant string used for TaskJuggler
type The type of the object.
type_id The id of the Type of this entity.
type_id_local
updated_by The User who has updated this object.
updated_by_id The id of the User who has updated this entity.
code

The code name of this object.

It accepts strings. Can not be None.

created_by

The User who has created this object.

created_by_id

The id of the User who has created this entity.

date_created

A datetime.datetime instance showing the creation date and time of this object.

date_updated

A datetime.datetime instance showing the update date and time of this object.

description

Description of this object.

generic_data

This attribute can hold any kind of data which exists in SOM.

generic_text

This attribute can hold any text.

name

Name of this object

nice_name

Nice name of this object.

It has the same value with the name (contextually) but with a different format like, all the white spaces replaced by underscores (“_”), all the CamelCase form will be expanded by underscore (_) characters and it is always lower case.

notes

All the Notess attached to this entity.

It is a list of Note instances or an empty list, setting it to None will raise a TypeError.

plural_class_name

the plural name of this class

tags

A list of tags attached to this object.

It is a list of Tag instances which shows the tags of this object

target_entity_type

The entity type which this object is valid for.

Usually it is set to the TargetClass directly.

tjp_id

returns TaskJuggler compatible id

to_tjp

renders a TaskJuggler compliant string used for TaskJuggler integration. Needs to be overridden in inherited classes.

type

The type of the object.

It is a Type instance with a proper Type.target_entity_type.

type_id

The id of the Type of this entity. Mainly used by SQLAlchemy to create a Many-to-One relates between SimpleEntities and Types.

updated_by

The User who has updated this object.

updated_by_id

The id of the User who has updated this entity.